使用Python控制浏览器?

2024-04-25 21:44:36 发布

您现在位置:Python中文网/ 问答频道 /正文


Tags: python
3条回答

如果需要截图,则需要渲染页面。我建议使用硒(如Tim所述),或者spynner

以下是使用spynner所需的示例代码:

import spynner

browser = spynner.Browser()
browser.load("http://stackoverflow.com/q/3369073/")
browser.snapshot().save('file.png')
browser.close()

wxWebConnect是一个wxWidgets库,用于控制Gecko(Mozilla的呈现引擎)。与wxPython一起,它将允许您用Python编写自己的(最小的)web浏览器,从而控制单击。

Selenium Remote Control是一个非常接近你所追求的项目。在Python中使用它附带的selenium.webdriver子包非常容易。从前,这是两个项目。他们现在已经统一了。

安装

很简单!

$ pip install -U selenium

使用量

>>> from selenium import webdriver
>>> ff = webdriver.Firefox()
>>> ff.get("http://stackoverflow.com/q/3369073/395287")
>>> ff.save_screenshot("/absolute/path/to/webpage.png")

注释

对于Selenium来说,文档可能有点混乱,因为有两种模式可以与浏览器交互。除了webdriver模式之外,还可以与“独立的Selenium远程控制服务器”进行对话。这种方法是在official documentation中首先记录的,但是对于这里的简单任务,我将坚持使用webdriver

相关问题 更多 >