如何将requests.cookiejar转换成qnetworkcookiejar?

Pum*_*mba 15 python qt pyqt python-3.x pyqt5

有没有一种简单的方法将cookiejarPython 3 requests转换为qnetworkcookiejar

我将cookiejar请求库转换为字典,然后转换为qnetworkcookiejar.有些cookie有多个版本,有不同的值.

def updateCookieJar(self, cookiejar, requested_url):     
    qnetworkcookie_list = []
    cookie_dict = dict_from_cookiejar(cookiejar)
    for cookie in cookie_dict: 
        tmp_cookiejar = QNetworkCookie(cookie, cookie_dict[cookie])
        qnetworkcookie_list.append(tmp_cookiejar)
    qcookiejar = QNetworkCookieJar()
    qcookiejar.setCookiesFromUrl(qnetworkcookie_list, QUrl(requested_url))
    self.networkAccessManager().setCookieJar(qcookiejar)
Run Code Online (Sandbox Code Playgroud)

这个函数在a里面调用Webpage.

Kas*_*ati 1

尝试cookiejar直接使用而不是字典。

def updateCookieJar(self, cookiejar, requested_url):     
    qnetworkcookie_list = []

    for cookie in cookiejar:
        tmp_cookiejar = QNetworkCookie(cookie.name, cookie.value)
        qnetworkcookie_list.append(tmp_cookiejar)
    qcookiejar = QNetworkCookieJar()
    qcookiejar.setCookiesFromUrl(qnetworkcookie_list, QUrl(requested_url))
    self.networkAccessManager().setCookieJar(qcookiejar)
Run Code Online (Sandbox Code Playgroud)