2010-09-14 30 views

Trả lời

5

Tôi đã thay đổi start trong 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) 

Các bạn làm:

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

và nó hoạt động như một nét duyên dáng

+1

Phần '* firefox' là gì? – maudulus

+0

Nhưng tôi nhận được lỗi 'NameError: tên toàn cầu 'captureNetworkTraffic' không được xác định' – SIslam

+0

Mã này có dành cho selenium 2.7.0 không? – SIslam

1

Khởi động trình duyệt ở chế độ "proxy-injection" (lưu ý *pifirefox thay vì *firefox). Sau đó, bạn có thể gọi phương thức captureNetworkTraffic.

import selenium 
import time 

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

Tôi đã học được *pifirefox "lừa" here.

+0

Nhưng làm việc phương pháp này mà không bắt đầu lái xe với "captureNetworkTraffic = true "? Có nghĩa là không giống như Java, vv phương pháp hoặc tính năng này trong Python sẽ là "luôn luôn trên"? – David

+0

@David: Thay vì 'captureNetworkTraffic = true', tôi thấy mình cần khởi động trình duyệt ở chế độ proxy proxy. (xem ở trên) – unutbu

+0

Mã này có dành cho selenium 2.7.0 không? – SIslam

Các vấn đề liên quan