在Python程序中嵌入一个Web浏览器

我如何在Python程序中嵌入网页浏览器? 它需要在Linux上运行(GTK,Qt都可以)或者跨平台的。

我已经看过嵌入pywebgtk和Qt的WebKit小部件。 但是这些似乎只有一个渲染引擎。 特别是,我希望支持后退/前进和标签式浏览。 是这样的预先打包,还是我必须自己实现?

wxWebConnect似乎大概是我想的,但它没有Python绑定。


http://pypi.python.org/pypi/selenium/2.7.0

您可以安装selenium软件包并运行与您的python代码连接的服务器(同一台机器,只是一个不同的进程):

java -jar selenium-server-standalone-2.7.0.jar

然后:

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time

browser = webdriver.Firefox() # Get local session of firefox
browser.get("http://www.yahoo.com") # Load page
assert "Yahoo!" in browser.title
elem = browser.find_element_by_name("p") # Find the query box
elem.send_keys("seleniumhq" + Keys.RETURN)
time.sleep(0.2) # Let the page load, will be added to the API
try:
    browser.find_element_by_xpath("//a[contains(@href,'http://seleniumhq.org')]")
except NoSuchElementException:
    assert 0, "can't find seleniumhq"
browser.close()

您可以使用subprocess在Python代码中启动服务器。

链接地址: http://www.djcxy.com/p/55037.html

上一篇: Embed a web browser in a Python program

下一篇: Exporting sounds as WAV files