我已經涉足 python selenium 有一段時間了,我在某事上遇到了一個十字路口。
我想從桌面上的 .txt 檔案中獲取資訊,并使用該 .txt 中的資料并將其寫入網頁。我知道打開 .txt 檔案和讀取檔案行等的基礎知識,但我正在努力讓它將 .txt 檔案中的文本寫入網頁。
例如:“1”“2”“3”
^ 可以說這些是文本檔案中的行/文本。我希望它首先抓取“1”并將其粘貼到我已經擁有 xpath 的頁面上的文本框中。然后我希望腳本重新啟動頁面,但這次鍵入“2”并繼續重復,直到 .txt 檔案中沒有更多行。希望這是有道理的。如果不是,請告訴我,我會嘗試進一步解釋,我在網上尋找了幾個解決方案,但遺憾的是,沒有什么能真正接近我想要的。謝謝!
我得到它來閱讀這些行并將文本檔案中的內容列印出來,但那是簡單的東西,老實說,我還沒有學到我需要的東西。這就是為什么我希望我能從這里得到一些指導/幫助。
下面的例子。
driver=webdriver.Chrome(r"C:\ProgramFile(x86)\ChromeDriver\chromedriver.exe)
driver.get('examplewebpage')
file = open(r'C:\Users\example\Desktop\test.txt','r')
read = file.readlines()
modified = []
for line in read:
if line not in modified:
modified.append(line.strip())
print(modified)
time.sleep(1)
n = driver.find_element(By.XPATH, '//*[@id="exampletextbox"]')
file = open(r'C:\Users\example\Desktop\test.txt','r')
lines = file.readlines()
for line in lines:
n = driver.find_element(By.XPATH, '//*[@id="exampletextbox"]')
n.send_keys(line.strip())
file.close()
uj5u.com熱心網友回復:
解決方案將如下所示:
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
with open('myfile.txt', 'r') as text_file:
lines = text_file.readlines()
for line in lines:
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get('https://seleniumbase.io/demo_page')
text_box = driver.find_element(By.XPATH, '//textarea[@id="myTextarea"]')
text_box.send_keys(line)
sleep(3) # Pause for 3 seconds just to be able to see the result. It's better to remove this when all the code is ready.
text_box.submit() # submit the form if you need it
driver.quit()
該檔案的內容myfile.txt是:
1
2
3
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/532182.html
