2013-03-17 96 views
1

我写了一个程序来选择一个网页的屏幕截图。用户键入一个url,然后我的应用程序就会获得一个键入页面的屏幕截图。我想知道是否有可能(以及如何)隐藏浏览器窗口?我的意思是,不,打开它,但采取屏幕保护?在此先感谢:)是否可以隐藏python浏览器窗口(包括Windows,Linux)?

我使用Python 2.7和分裂为此。代码如下:

from splinter import Browser 
import socket 

url = raw_input('> ') 

browser = None  
try: 
    browser = Browser('firefox') 
    try: 
     browser.visit(url) 
     if browser.status_code.is_success(): 
      browser.driver.save_screenshot('picture.png') 
    except socket.gaierror, e: 
     print "URL not found: %s" % url 
finally: 
    if browser is not None: 
     browser.quit() 

对于Ubuntu,我发现这个:Selenium-Python Client Library - Automating in Background但是Windows怎么样?

+0

在Linux上工作根据http://stackoverflow.com/questions/6924387/selenium-python-client-library-automating-in-background?rq=1 – Techfiz 2013-04-15 09:01:08

回答

2

您有几种选择:

  1. 使用一个 “哑” 无头的浏览器,如mechanize。这是快速的,适合快速访问和截图。但是,它不理解JavaScript。

  2. 使用zope.testbrowser浏览器在你的碎片测试。这是一个无头浏览器,所以它不会出现在屏幕上。它理解JavaScript,但需要更多的投资才能启动。

  3. 只要使用urllib2有一些特殊的头。

相关问题