2017-02-16 8 views
0

次のコードを使用して、内部ページのスクリーンショットを生成しています。ここでは、私はホスト名の代わりにIPアドレスを使用していることがわかります。私たちは名前ベースのバーチャルホスティングを使用しているので、適切なホスト名がなければ、私たちのWebサーバーは適切なページで応答しません。このコードでホスト名/ドメイン名(www.example.com)を設定できますか?セレンでホスト名を設定するには

#!/usr/bin/env python 

from pyvirtualdisplay import Display 
from selenium import webdriver 

display = Display(visible=0, size=(800, 600)) 
display.start() 

browser = webdriver.Firefox() 
browser.get('http://170.90.23.27/TEST/') 
browser.save_screenshot('screenie.png') 
browser.quit() 
display.stop() 
+0

完全なURLを構成するための文字列の連結に問題? – Morvader

+0

このURLはApacheのリバースプロキシURLです。これが、IPを使用してホストヘッダーを渡す理由です。 –

答えて

0

編集:私はドメインを入れようとしていますか? get()メソッドは、指定されたURLを持つページに移動します。ページがロードされた後、必要な操作を行うことができます。 Firefoxの上でプロキシを設定してください:

from selenium import webdriver 
from selenium.webdriver.common.proxy import * 


myProxy = "host:8080" 

proxy = Proxy({ 
    'proxyType': ProxyType.MANUAL, 
    'httpProxy': myProxy, 
    'ftpProxy': myProxy, 
    'sslProxy': myProxy, 
    'noProxy': '' # set this value as desired 
}) 

driver = webdriver.Firefox(proxy=proxy) 

driver.get("http://www.python.org") 

ドキュメント:

+0

上記のスクリプトは正常に動作していますが、ホストヘッダーを渡していないため404が見つかりません。 –

+0

これで私を助けてくれる人がいますか? –

+0

私は答えを編集し、これがあなたを助けてくれることを願っています。 – AntLouiz

関連する問題