2013-06-20 5 views
5

मैं पाइथन अनुरोध 1.2.3 लाइब्रेरी का उपयोग कर मौजूदा कुकीजर में कुकी जोड़ने की कोशिश कर रहा हूं। हर बार जब मैं नई कुकी जोड़ता हूं, तो जार में डेटा को नई कुकी के लिए जोड़ा जाता है। कुंजी गुम हैं, गलत कुंजी के लिए अनुपलब्ध मान या मेल खाते हैं। मुझे यकीन नहीं है कि यह एक अनुरोध पुस्तकालय बग है या मैं कुकी को सही तरीके से नहीं भेज रहा हूं। मैं निम्नलिखित कोड का उपयोग कर रहा हूं जिसके परिणामस्वरूप कुकीजर में खराब कुकी होती है। क्या मैं कुकी को सही ढंग से स्वरूपित कर रहा हूं? कोई विचार?पायथन अनुरोध लाइब्रेरी में कुकीज में कुकी कैसे जोड़ें

my_cookie = { 
      'domain':'www.mydomain.com', 
      'expires':None, 
      'name':'COOKIE_NAME', 
      'path':'/', 
      'value':'the cookie works', 
      'version':0 
} 

s = requests.Session() 
requests.utils.add_dict_to_cookiejar(s.cookies, my_cookie) 

उत्तर

8

मुझे कुकीज, कुकी और कुकीज़ आयात करके ऐसा करने का एक तरीका मिला। @ लुकासा से मदद के साथ, उसने मुझे एक बेहतर तरीका दिखाया। हालांकि, अपने रास्ते से मैं "port_specified", "domain_specified", "domain_initial_dot" या "path_specified" विशेषताओं को निर्दिष्ट करने में सक्षम नहीं था। "सेट" विधि स्वचालित रूप से डिफ़ॉल्ट मानों के साथ होती है। मैं एक वेबसाइट को स्क्रैप करने की कोशिश कर रहा हूं और उनकी कुकी के उन विशेषताओं में अलग-अलग मान हैं। जैसा कि मैं इस सब के लिए नया हूं, मुझे यकीन नहीं है कि क्या यह वास्तव में मायने रखता है।

my_cookie = { 
"version":0, 
"name":'COOKIE_NAME', 
"value":'true', 
"port":None, 
# "port_specified":False, 
"domain":'www.mydomain.com', 
# "domain_specified":False, 
# "domain_initial_dot":False, 
"path":'/', 
# "path_specified":True, 
"secure":False, 
"expires":None, 
"discard":True, 
"comment":None, 
"comment_url":None, 
"rest":{}, 
"rfc2109":False 
} 

s = requests.Session() 
s.cookies.set(**my_cookie) 
0
plain_cookie = 'nopubuser_abo=1; groupenctype_abo=1' 
cj = requests.utils.cookiejar_from_dict(dict(p.split('=') for p in plain_cookie.split('; '))) 
sess = requests.Session() 
sess.cookies = cj 
+0

आप शायद 'पर विभाजित करना चाहिए;', पर '=' बंटवारे से पहले तो 'strip' खाली स्थान के। इसके अलावा, एक स्पष्टीकरण अच्छा होगा। – wizzwizz4

संबंधित मुद्दे