问题
I've found many tutorials for selenium in java in which you first start selenium using s.start("captureNetworkTraffic=True")
, but in python start()
does not take any arguments.
How do you pass this argument? Or don't you need it in python?
回答1:
I changed the 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)
The you do:
sel = selenium.selenium('localhost', 4444, '*firefox', 'http://www.google.com')
sel.start(True)
sel.open('')
print sel.captureNetworkTraffic('json')
and it works like a charm
回答2:
Start the browser in "proxy-injection mode" (note *pifirefox
instead of *firefox
). Then you can call the captureNetworkTraffic
method.
import selenium
import time
sel=selenium.selenium("localhost",4444,"*pifirefox","http://www.google.com/webhp")
sel.start()
time.sleep(1)
print(sel.captureNetworkTraffic('json'))
I learned the *pifirefox
"trick" here.
来源:https://stackoverflow.com/questions/3712278/selenium-rc-how-do-you-use-capturenetworktraffic-in-python