Python 2.7 Selenium/Python查找元素并单击它
我已经对此进行了一段时间的研究,下面是我编写的代码Python 2.7 Selenium/Python查找元素并单击它,python-2.7,selenium,selenium-webdriver,Python 2.7,Selenium,Selenium Webdriver,我已经对此进行了一段时间的研究,下面是我编写的代码 driver = webdriver.Firefox() time.sleep(10) get("some website") time.sleep(10) x = driver.find_element_by_id("vB_Editor_QR_textarea") x.click() 它不断给我错误,它不工作的部分正在获取find\u元素和click() 它不断从webdriver.py 下面是错误提示的屏幕截图:我现在没有鼠标,所以我只是
driver = webdriver.Firefox()
time.sleep(10)
get("some website")
time.sleep(10)
x = driver.find_element_by_id("vB_Editor_QR_textarea")
x.click()
它不断给我错误,它不工作的部分正在获取find\u元素
和click()
它不断从webdriver.py
下面是错误提示的屏幕截图:我现在没有鼠标,所以我只是拍了张照片
您应该尝试以下方法:
driver = webdriver.Firefox()
driver.get("https://example.com") # Make sure you use double quotes
而不是time.sleep()
您应该使用。我通常使用隐式等待
driver.implicitly_wait(10) # 10 seconds
隐式等待是告诉WebDriver在试图查找一个或多个元素(如果它们不立即可用)时轮询DOM一段时间
尝试以下简单的谷歌搜索自动化:
import unittest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
class AutoTest(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Firefox()
def test_auto_test(self):
driver = self.driver
driver.get("http://www.google.com")
element = driver.find_element_by_css_selector('#lst-ib')
element.send_keys("StackOverflow")
element = driver.find_element_by_css_selector('#sblsbb > button > span').click()
if __name__ == "__main__":
unittest.main()
您得到的错误是什么?请在这里发布错误堆栈。这是我收到的错误注意:我没有鼠标,所以我只是截图。请发布错误文本。在未来的某个时刻,这个形象将消失,这个问题将变得不那么有价值。你还需要发布你正在引用的HTML。那么剩下的代码对你来说很好吗?我一到家就试试,不要用
time.sleep()
。使用隐式和显式等待。我已经更新了我的答案。