from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.implicitly_wait(40)
driver.get("https://www.youtube.com/")
elem = driver.find_element_by_name("search_query")
elem.clear()
elem.send_keys("python")
elem.send_keys(Keys.RETURN)
這段代碼假設在網頁的搜索框中發送“python”并獲取一個新網頁,但它不起作用,我不知道為什么。
uj5u.com熱心網友回復:
您需要在傳遞回傳鍵之前進行一些延遲/等待。
driver = webdriver.Firefox()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get("https://www.youtube.com/")
elem = driver.find_element_by_name("search_query")
elem.clear()
elem.send_keys("python")
time.sleep(2)
elem.send_keys(Keys.RETURN)
uj5u.com熱心網友回復:
另一個技巧是,當您在文本框中輸入文本時,嘗試模擬用戶操作。例如,在這種情況下,單擊該文本框然后輸入。(請參閱代碼注釋)。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.implicitly_wait(40)
driver.get("https://www.youtube.com/")
elem = driver.find_element_by_name("search_query")
elem.clear()
elem.send_keys("python")
elem.click() # add this line to your code
elem.send_keys(Keys.RETURN)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/311602.html
上一篇:PythonSelenium:從三個回圈變為一個回圈重復相同的資訊
下一篇:執行緒“main”org.openqa.selenium.WebDriverException中的例外:驅動程式服務器行程過早死亡
