问题内容: 我创建了一个小的屏幕抓取器,并且一切似乎都运行良好,信息被提取并保存在数据库中。我唯一遇到的问题是有时Python不使用,因此它尝试在错误的页面上获取信息并崩溃。我尝试添加一个,但有时仍然无法正常工作。我正在尝试对其进行优化,以尽可能减少时间。因此,使其hibernate30秒似乎不是一个好的解决方案。 问题答案: 这是最好的解决方案。不能保证back()和forward()方法有效。
问题内容: 我用python与selenium结合编写了一个脚本,以从其着陆页中抓取不同文章的链接,并通过跟踪引向其内页的url最终获得每个文章的标题。尽管我在这里解析的内容是静态内容,但我还是使用了selenium来查看它在多处理中的工作方式。 但是,我的意图是使用多处理进行抓取。到目前为止,我知道selenium不支持多处理,但似乎我错了。 我的问题:当使用多处理运行selenium时,如何减
问题内容: 我一直在尝试最后一小时删除元素,但没有成功。而且该元素只能通过类名来访问。我试过了: 我收到未定义parentNode的错误。 那么,使用Selenium删除元素的最佳方法是什么? 问题答案: getElementByClassName不是的方法。您将要使用 但前提是您确定它是该课程中唯一的课程。
问题内容: 我在Selenium IDE中进行了一些测试,并将其保存为HTML格式的测试套件,可以很好地导入回Selenium IDE。但是现在我想使用python扩展这些测试,当我单击“导出测试套件”并选择python时,出现此错误 chrome:// selenium-ide / content / formats / python-rc格式化程序未实现套件导出 如何在Selenium IDE
问题内容: 有时,我会在页面上寻找可能存在或不存在的元素。我想用/尝试/捕获这种情况,当某些HTML元素不存在时,selenium会抛出该异常。原始例外: 具有讽刺意味的是,它不会让我捕捉到之前抛出的异常吗?代码在这里: 错误在这里: 谷歌搜索/文档整理一无所获…让我感到奇怪的是,selenium可以引发异常但不能捕获它。 问题答案: 您需要先导入异常 然后你可以参考它
问题内容: 我有一个页面,其源代码不可用,但是有一个输入框,其中光标闪烁。 我可以在没有找到元素的情况下将一些内容写到文本框中吗?我的意思是,某种方式下,发送键可以自动查找聚焦的输入框并输入输入内容。 我的代码无法正常工作 问题答案: 解决了
问题内容: 有人知道如何等待页面加载吗?我尝试了在网上找到的所有可能的变体,但根本无法正常工作。 触发click()命令后,我需要等待,Web服务器上存在一些内部脚本,这些脚本会愚弄检查,例如(我排除了导入所需模块并使用标准命名约定的代码): 要么 要么 上述所有检查均无效,从某种意义上来说,即使页面仍在加载中,它们也会返回True。这会导致我正在阅读的文本不完整,因为click()命令后页面未完
问题内容: 我知道我可以使用以下方法: 但是我想做的就是简单地获取页面中存在的所有元素ID的列表,也许还有它们出现的标记类型。 我该怎么做? 问题答案: 以前不必这样做,但是可以从逻辑上考虑一下,您可以使用XPath来做到这一点(也许是其他方式,XPath是出现在我脑海中的第一件事)。 使用XPath (具有某种ID的 任何 元素)使用。 然后,您可以遍历集合,并使用每个元素的属性来找出元素的 种
问题内容: 我正在将一些测试从Selenium移到WebDriver。我的问题是我找不到selenium.wait_for_condition的等效项。Python绑定现在有此功能还是仍在计划中? 问题答案: 当前,无法在WebDriver中使用wait_for_condition。python selenium代码确实提供了DrivenSelenium类来访问旧的selenium方法,但是它不能
问题内容: 我想运行使用Python脚本与作为我的一个无头的浏览器 树莓派 运行Raspbian。 我最初是在OS X上编写脚本的,可以正常工作。但是,在尝试使其在Raspberry上运行时,我遇到了问题。 尝试运行脚本时,出现以下错误: 脚本的简短版本: 我已经看到其他人有类似我的问题-解决方案不一- 大多数似乎都涉及到自己构建PhantomJS,或者克隆并安装适用于Raspberry的Gith
问题内容: 我想知道将Selenium Webdriver与python绑定和Java结合使用的优缺点。到目前为止,似乎走Java路线的文档要好得多。除此之外,这似乎取决于您喜欢哪种语言,但是也许我错过了一些东西。 感谢您的输入! 问题答案: 一般而言,Java硒Web驱动程序的文档更好。当我寻求有关特定问题的帮助时,比起Python讨论,我更有可能找到有关该问题的Java讨论。 要考虑的另一件事
问题内容: 我收到一个元素不可见的错误: 对于运行此代码时的每个find元素行: 页面登录部分的HTML如下所示: 问题答案: Selenium与用户与Web浏览器的交互方式类似。因此,如果您尝试与之交互的html元素不可见,那么最简单的解释是,当您编写硒代码时,您不会像普通用户那样与网页进行交互。 最后,这与网页的html无关,与DOM和元素的hidden属性无关。我建议您下载Firebug或其
问题内容: 我正在尝试使用Selenium WebDriver将特定图像保存到目录中。我一直在通过模拟右键单击img元素并选择“将图像另存为…”来实现此目的。使用以下代码,我可以打开上下文菜单,但是无法选择正确的选项。 我也尝试过: 并使用快捷方式(“ v”似乎选择了“将图像另存为…”) 该图片没有直接的网址,因为它是一个验证码图片,每次点击都会随机重新加载。对于我来说,能够处理它的唯一方法是首先
问题内容: 我使用Selenium和chromedriver创建了一个小型网络抓取应用程序,用于将内容输出到excel文件的项目。不幸的是,我为此应用程序开发的人并不是最精通技术的人。 所以我的问题是如何与这些人共享此应用程序? 我查看了py2exe.org,但在创建可执行文件时并未考虑chromedriver。还有其他更好的方法,而无需这些人将文件手动添加到其“ usr / bin”吗? 问题答
问题内容: 我正在尝试单击网页上的所有“喜欢”按钮。我知道如何单击其中之一,但我希望能够全部单击它们。它们具有相同的类名,但ID不同。 我是否需要创建某种列表,并告诉它单击列表中的每个项目?有没有写“全部单击”的方法? 这是我的代码的样子(我删除了登录代码): 我知道我无法单击列表,因为它不是单个对象,但是我不知道如何处理。 非常感谢您的帮助。 问题答案: 不幸的是,您只得到了两半,因为ID对于单