2010-09-14 24 views

Antwort

5

Ich änderte die start in selenium.py:

def start(self, captureNetworkTraffic=False): 
    l = [self.browserStartCommand, self.browserURL, self.extensionJs] 
    if captureNetworkTraffic: 
     l.append("captureNetworkTraffic=true") 
    result = self.get_string("getNewBrowserSession", l) 

Die Sie tun:

sel = selenium.selenium('localhost', 4444, '*firefox', 'http://www.google.com') 
sel.start(True) 
sel.open('') 
print sel.captureNetworkTraffic('json') 

und es wirkt wie ein Zauber

+1

Was ist der '* firefox' Teil? – maudulus

+0

Aber ich bekomme Fehler 'NameError: globaler Name 'captureNetworkTraffic' ist nicht definiert ' – SIslam

+0

Ist dieser Code nur für Selen 2.7.0? – SIslam

1

Den Browser im "Proxy-Injektionsmodus" starten (Hinweis *pifirefox anstelle von *firefox). Dann können Sie die captureNetworkTraffic Methode aufrufen.

import selenium 
import time 

sel=selenium.selenium("localhost",4444,"*pifirefox","http://www.google.com/webhp") 
sel.start() 
time.sleep(1) 
print(sel.captureNetworkTraffic('json')) 

Ich lernte die *pifirefox "Trick" here.

+0

Aber funktioniert diese Methode funktioniert, ohne den Fahrer mit „captureNetworkTraffic Start = wahr "? Anders als bei Java usw. ist diese Methode oder Funktion in Python "immer an"? – David

+0

@David: Statt 'captureNetworkTraffic = true' musste ich den Browser im Proxy-Injection-Modus starten. (siehe oben) – unutbu

+0

Ist dieser Code nur für Selen 2.7.0? – SIslam

Verwandte Themen