當前我正在寫一個可以在無限循環中工作的Web刮取器。它獲取一個頁面,搜索一些按鈕並單擊其中一個按鈕。但有時它不會!我保存了屏幕截圖,以防某些失敗,並且顯示該頁面在點擊按鈕後沒有改變。Selenium驅動程序有時不點擊元素
driver.find_element_by_xpath('//input[@name = "btn"]').click()
time.sleep(3)
我已經繞過這個循環檢查我們是否看到該元素仍然存在。
while driver.find_elements_by_xpath('//input[@name = "Submit"]') != []:
driver.find_element_by_xpath('//input[@name = "Submit"]').click()
但希望找到一個根本原因。它可能是什麼?
確保您在點擊前後等待(例如明確等待)適當的時間。 –
我想你需要適當的等待來加載頁面?或使用預期的合同? – SIslam
頁面加載成功和完全 - 我可以找到任何我需要的元素。我使用time.sleep等待2-3秒來延遲一些時間,但是我應該使用一些硒等待函數還是其他的? – academica