2016-07-22 18 views
0

私はPythonに慣れていますが、ブラウザで使用されるすべてのプロトコルにはあま​​り慣れていません。私はセレンのwebdriverのためのプロキシを設定しようとしていない、これは私が使用するコードです。私はHAR内部IPでbrowsermobproxyが動作しないのはなぜですか?

Unable to connect 

これを言って、エラーを取得しています

from browsermobproxy import Server, Client 
server = Server('/Users/***/Downloads/browsermob-proxy-2.1.1/bin/browsermob-proxy') 
server.start() 
proxy = server.create_proxy() 
profile = webdriver.FirefoxProfile() 
profile.set_proxy(proxy.selenium_proxy()) 
driver = webdriver.Firefox(firefox_profile=profile) 
proxy.new_har("10.203.9.156") 
driver.get("http://10.203.9.156") 
print json.dumps(proxy.har, indent =2) # returns a HAR JSON blob 
server.stop() 
driver.quit() 

プロキシから

{ 
"log": { 
"comment": "", 
"creator": { 
    "comment": "", 
    "version": "2.1.1", 
    "name": "BrowserMob Proxy" 
}, 
"version": "1.2", 
"entries": [ 
    { 
    "comment": "", 
    "serverIPAddress": "10.203.9.156", 
    "pageref": "10.203.9.156", 
    "startedDateTime": "2016-07-21T18:54:14.653-07:00", 
    "cache": {}, 
    "request": { 
     "comment": "", 
     "cookies": [], 
     "url": "http://10.203.9.156/", 
     "queryString": [], 
     "headers": [], 
     "headersSize": 317, 
     "bodySize": 0, 
     "method": "GET", 
     "httpVersion": "HTTP/1.1" 
    }, 
    "timings": { 
     "comment": "", 
     "receive": 0, 
     "send": 0, 
     "ssl": -1, 
     "connect": 7, 
     "dns": 0, 
     "blocked": 0, 
     "wait": 4 
    }, 
    "time": 12, 
    "response": { 
     "status": 301, 
     "comment": "", 
     "cookies": [], 
     "statusText": "Moved Permanently", 
     "content": { 
     "mimeType": "", 
     "comment": "", 
     "size": 0 
     }, 
     "headers": [], 
     "headersSize": 160, 
     "redirectURL": "https://10.203.9.156/login.html", 
     "bodySize": 0, 
     "httpVersion": "HTTP/1.1" 
    } 
    }, 
    { 
    "comment": "", 
    "serverIPAddress": "10.203.9.156", 
    "pageref": "10.203.9.156", 
    "startedDateTime": "2016-07-21T18:54:14.684-07:00", 
    "cache": {}, 
    "request": { 
     "comment": "", 
     "cookies": [], 
     "url": "https://10.203.9.156", 
     "queryString": [], 
     "headers": [], 
     "headersSize": 0, 
     "bodySize": 0, 
     "method": "CONNECT", 
     "httpVersion": "HTTP/1.1" 
    }, 
    "timings": { 
     "comment": "", 
     "receive": 0, 
     "send": 0, 
     "ssl": -1, 
     "connect": 193, 
     "dns": 0, 
     "blocked": 0, 
     "wait": 0 
    }, 
    "time": 194, 
    "response": { 
     "status": 0, 
     "comment": "", 
     "cookies": [], 
     "_error": "Unable to connect to host", 
     "statusText": "", 
     "content": { 
     "mimeType": "", 
     "comment": "", 
     "size": 0 
     }, 
     "headers": [], 
     "headersSize": -1, 
     "redirectURL": "", 
     "bodySize": -1, 
     "httpVersion": "unknown" 
    } 
    } 
], 
"pages": [ 
    { 
    "pageTimings": { 
     "comment": "" 
    }, 
    "comment": "", 
    "title": "10.203.9.156", 
    "id": "10.203.9.156", 
    "startedDateTime": "2016-07-21T18:54:14.602-07:00" 
    } 
], 
"browser": { 
    "comment": "", 
    "version": "46.0", 
    "name": "Firefox" 
} 
} 
} 

ことこれらは私がIPとGoogleのために得た2つの応答です。

​​ google.com

は、誰かがこれを是正するには、この方法と、その理由を説明できますか?

答えて

0

ほとんどのBMPは、https://10.203.9.156/login.htmlで示された証明書がそのIPアドレスに対して有効でないため、ホストへの接続を拒否しています。埋め込みモードとコマンドライン/スタンドアロン/ REST APIモードの両方に、trustAllServersオプションがあり、証明書のチェックを無効にします。 Pythonラッパーがそのオプションを公開しているかどうかはわかりません。私は、Pyhtonラッパーのためにドキュメントを調べて、それがなければPRを提出することをお勧めします。

関連する問題