我不知道如何找到这些信息,到目前为止我已经找到了一些关于将Python与selenium一起使用的教程,但是没有人对此有所了解。我能够通过python运行一些基本的测试脚本自动化selenium但它只是显示浏览器窗口几秒钟然后关闭它..我需要将浏览器输出变为字符串/变量(理想情况下)或者至少将其保存到文件中以便python可以执行其他操作它(解析它等)..如果有人能指出我如何做到这一点的资源,我将不胜感激。感谢
答案 0 :(得分:3)
使用 Selenium Webdriver 和Python,您只需访问.page_source
属性即可获取当前页面的来源。
例如,使用Firefox()
驱动程序:
from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://www.example.com/')
print(driver.page_source)
driver.quit()
答案 1 :(得分:2)
好的,所以这就是我最后这样做的方式,对于将来需要这个的人来说......
你必须使用firefox才能工作。
1)创建一个新的firefox配置文件(不是必需但非常理想,以便将其与普通的firefox使用分开),有很多关于如何在google上执行此操作的信息,这取决于您的操作系统如何执行此操作
2)获取firefox插件:https://addons.mozilla.org/en-US/firefox/addon/2704/(这会自动保存给定域名的所有页面),您需要对其进行配置以保存您打算自动保存的域名。
3)然后启动selenium服务器以使用您创建的配置文件(以下是Linux的示例)
cd /root/Downloads/selenium-remote-control-1.0.3/selenium-server-1.0.3
java -jar selenium-server.jar -firefoxProfileTemplate /path_to_your_firefox_profile/
多数民众赞成,它会在selenium访问时保存给定域名的所有页面,selenium也会创建一堆垃圾页面,所以你可以通过一个简单的正则表达式解析来删除它们,这取决于你,那里有如何操纵保存的页面
答案 2 :(得分:2)
Java中有一个Selenium.getHtmlSource()
方法,很可能它也可以在Python中使用。它以字符串形式返回当前页面的源代码,因此您可以随心所欲地执行任何操作