2014-12-15 1 views
13

cookiejar을 파이썬 3 requests library에서 qnetworkcookiejar으로 변환하는 간단한 방법이 있습니까?requests.cookiejar을 qnetworkcookiejar로 변환하는 방법?

요청 라이브러리의 cookiejar을 사전으로 변환 한 다음 qnetworkcookiejar으로 변환합니다. 일부 쿠키는 값이 다른 여러 버전에 있습니다.

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) 

이 함수는 Webpage 내에서 호출됩니다.

답변

0

사전 대신 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) 
관련 문제