草庐IT

selenium4

全部标签

Python Selenium WebDriver 如何为 get(url) 函数添加超时

我正在运行一段简单的代码,通过代理下载网站,但有时代理可能会很慢,这可能会导致WebDriver.get(url)请求无限期阻塞。WebDriver是否有一段简单的Python代码可以为此函数设置超时?通过搜索,我只找到了适用于Java的技术。driver.get(url) 最佳答案 对于所有的webcretents,我用来解决这个问题的是这个。Selenium使用socket库,所以我在socket模块上设置了一个超时,这会抛出一个错误,我们可以使用该错误将转义键发送到浏览器(这会停止页面加载):socket.setdefault

python - selenium webdriver sendkeys() 使用 python 和 firefox

我正在使用selenium2.25.0、firefox3和python2.6.6。我正在尝试运行一个使用sendkeys()的selenium函数:Webdriver.find_element_by_name('j_username').clear()webdriver.find_element_by_name('j_username').send_keys("username")这段代码可以在我的机器上运行。然而,从另一台机器运行时,用户名字段留空并继续执行脚本的其余部分(不报告任何错误)。我可以看到在尝试发送用户名之前该字段已被清除,因此我知道查找按钮/按钮命名没有问题。我试过在清

jquery - Selenium wait.until 检查 ajax 请求完成是抛出错误

在带有Python的seleniumWebdriver中,我想等待Ajax请求完成(jquery库)。我使用Selenium的wait.until()函数。Ajax请求在点击submitJquery按钮后开始。wait.until(self.driver.execute_script("returnjQuery.active==0"))但是我得到了以下错误:E======================================================================ERROR:test_MahsumAkbasNet_Pass(__main__.TestC

python - Selenium 使用 Firefox 配置文件

我尝试在Windows10系统上使用SeleniumWebdriver和Python来实现浏览器操作的一些自动化。但我有这个问题:Selenium启动的Firefox窗口没有“看到”我已经登录并且目标站点将我发送到登录页面。所以我假设Selenium并没有真正使用配置文件,而只是它的一个副本。我想知道:我关于实际使用个人资料副本的结论是否正确?如果1.为真,是否有办法真正使用现有配置文件中的所有内容?如果我的结论不正确,请证明它并指出我可以找到哪些信息可以用于session的方向,为什么Selenium无法发送它以及如何强制它实际发送。编辑:fromseleniumimportwebd

python - 如果输入类型 ="number",Selenium send_keys 不起作用

我正在使用selenium编写测试。在这些测试中,我需要在表单的字段中输入一个数字。这是html:还有代码:browser=webdriver.Firefox()browser.get('file:///home/my_username/test.html')field=browser.find_element_by_id('field_id')field.send_keys('12')#NOTHINGHAPPEN!顺便说一句,例如,如果我将字段类型更改为“文本”,则完全没有问题。此外,field.send_keys(Keys.UP)运行良好(但在我使用Bootstrap时不起作用)并

python - 遍历 Selenium 2 WebDriver 中的表(python)

我在HTML中有以下表格布局(相应更改):FirstNameLastNameAgeJoeBloggs28JohnDoe30我希望能够使用Selenium2.0WebDriver对此进行迭代,但我找不到任何好的示例。如有任何帮助,我们将不胜感激。 最佳答案 用过的:fromselenium.webdriver.common.byimportBytrs=driver.find_elements(By.TAG_NAME,"tr")tds=trs[1].find_elements(By.TAG_NAME,"td")这允许循环遍历每一个以根据

python - Selenium (Python)-选择

现在,在我收到错误消息之前,我的脚本转到页面并从下拉列表“Vijesti”中打开第二个对象。这是错误:StaleElementReferenceException:Message:Elementnotfoundinthecache-perhapsthepagehaschangedsinceitwaslookedup来自Selenium网站:Thrownwhenareferencetoanelementisnow“stale”.StalemeanstheelementnolongerappearsontheDOMofthepage.PossiblecausesofStaleElement

python - 遍历 Selenium 中的表行(Python)

我有一个带有表格的网页,该表格仅在我单击“检查元素”时出现,并且在“查看源代码”页面中不可见。该表仅包含两行,每行有几个单元格,看起来类似于:16759MATH123001Calculus16449PHY456002Physics我想做的是遍历行并返回每个单元格中包含的文本。我似乎无法用Selenium做到这一点。这些元素不包含ID,我不确定如何获取它们。我不太熟悉使用xpaths等。这是一个返回TypeError的调试尝试:defcheck_grades(self):table=[]foriinself.driver.find_element_by_class_name("dddef

python - selenium move_to_element 并不总是鼠标悬停

我正在使用python2.7。尝试将鼠标悬停在菜单项上时,selenium不会在Chrome中始终将鼠标移动到该项目。因此,在单击子菜单时,它最终会单击其他内容。然而,相同的代码在Firefox驱动程序中抛出异常。我读了一些关于SO的帖子,这表明selenium有时可能很古怪。但我无法弄清楚我是否做错了什么。代码如下:fromseleniumimportwebdriverfromtimeimportsleepfromselenium.webdriver.common.action_chainsimportActionChainsdriver=webdriver.Chrome()#dri

python - Mac 上 Python 中的 Selenium - Geckodriver 可执行文件需要位于 PATH 中

我是编程新手,大约2个月前开始使用Python,并且正在阅读Sweigart的“使用Python文本自动化无聊的东西”。我正在使用Spyder3并且已经安装了selenium模块和Firefox浏览器。我在python文件中使用了以下代码fromseleniumimportwebdriverbrowser=webdriver.Firefox()browser.get('http://inventwithpython.com')我收到这个错误:Message:'geckodriver'executableneedstobeinPATH.除了进入终端并使用安装之外,我还下载了geckodr