1

選択した Web ページのスクリーンショットを撮るプログラムを作成しました。ユーザーが URL を入力すると、アプリケーションは入力されたページのスクリーンショットを取得します。ブラウザ ウィンドウを非表示にすることは可能ですか (また、その方法は)? つまり、それを開くのではなく、スクリーンショットを撮るのですか?前もって感謝します :)

これにはpython 2.7とsplinterを使用します。以下のコード:

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 はどうですか?

4

1 に答える 1

2

いくつかのオプションがあります:

  1. mechanizeのような「ダム」なヘッドレス ブラウザを使用します。これは高速で、簡単なアクセスとスクリーンショットに最適です。ただし、javascript は理解できません。

  2. スプリンター テストでzope.testbrowserブラウザーを使用します。ヘッドレス ブラウザなので、画面には表示されません。JavaScript は理解できますが、使い始めるにはさらに多くの投資が必要です。

  3. いくつかの特別なヘッダーでurllib2を使用するだけです。

于 2013-05-20T14:35:09.817 に答える