簡體   English   中英

AttributeError:測試spynner時,“瀏覽器”對象沒有屬性“管理器”

[英]AttributeError: 'Browser' object has no attribute 'manager' when test spynner

我正在嘗試使用spynner自動單擊HTML源代碼中的某些按鈕,作為一個小測試。 但我收到此錯誤。 追溯(最近一次呼叫最近):_on_reply中的文件“ build \\ bdist.win32 \\ egg \\ spynner \\ browser.py”,第287行AttributeError:“瀏覽器”對象沒有屬性“管理器”

以下是我的代碼,該代碼遵循此處的指南: https : //github.com/makinacorpus/spynner/blob/master/examples/webkit_methods.py

import spynner
import libxml2

proxy_ip = "xxx.xxx.xxx.xxx";
browser = spynner.Browser()  

    # setting proxy ip  
browser.set_proxy(proxy_ip :'8080'); 
browser.show() 

try:  
        browser.load(url='http://xxx.html', load_timeout=10, tries=1)  
except spynner.SpynnerTimeout:  
        print 'Timeout.'  
else:  

        browser.wk_click('a[id="voteProjectBtn_10353150"]', wait_load=True)  
browser.close()  

我正在使用Python 2.7,謝謝您的幫助!

browser.close()之前,您必須銷毀循環javascript,某些網站具有定時腳本,因此您需要銷毀這些腳本,請參見browser.py,更改方法“ _manager_create_request”,在browser.close()之前,設置self.closeflag = True

def _manager_create_request(self, operation, request, data):
    if self.closeflag:
        return None
    url = unicode(request.url().toString())
    operation_name = self._operation_names[operation].upper()
    self._debug(INFO, "Request: %s %s" % (operation_name, url))
    for h in request.rawHeaderList():
        self._debug(DEBUG, "  %s: %s" % (h, request.rawHeader(h)))
    if self._url_filter:
        if self._url_filter(self._operation_names[operation], url) is False:
            self._debug(INFO, "URL filtered: %s" % url)
            request.setUrl(QUrl("about:blank"))
        else:
            self._debug(DEBUG, "URL not filtered: %s" % url)
    reply = QNetworkAccessManager.createRequest(self.manager,
        operation, request, data)
    return reply

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM