कोई वास्तविक उत्तर नहीं है (लेकिन एक टिप्पणी के लिए बहुत लंबा है); संभवतः किसी और को इसका उत्तर देने का प्रयास करने के लिए उपयोगी।
मेरे सर्वोत्तम प्रयासों के बावजूद, मैं इसे समझ नहीं सकता।
फ़ायरबग में देख रहे हैं, कुकी फ़ायरफ़ॉक्स के लिए वही रहती है (ठीक से काम करती है)।
मैंने urllib2.HTTPSHandler(debuglevel=1)
को जोड़ा है जो पाइथन भेज रहे हैं, और यह कुकी को फिर से भेजने के लिए प्रतीत होता है।
मुझे यह भी (ऐसा नहीं है) कि अगर मदद मिलेगी देखने के लिए सभी Firefox अनुरोध हेडर कहा:
opener.addheaders = [
('User-Agent', 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13'),
..
]
मेरे परीक्षण कोड:
import cookielib, urllib2
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj), urllib2.HTTPSHandler(debuglevel=1))
opener.addheaders = [
('User-Agent', 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13'),
('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'),
('Accept-Language', 'en-gb,en;q=0.5'),
('Accept-Encoding', 'gzip,deflate'),
('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7'),
('Keep-Alive', '115'),
('Connection', 'keep-alive'),
('Cache-Control', 'max-age=0'),
('Referer', 'https://www.idcourts.us/repository/partySearch.do'),
]
home = opener.open('https://www.idcourts.us/repository/start.do')
print cj
search = opener.open('https://www.idcourts.us/repository/partySearch.do')
print cj
मुझे लगता है कि मैं याद कर रहा हूँ कुछ स्पष्ट है।
ऐसा लगता है कि अब और काम नहीं कर रहा है। वास्तव में अजीब ... – albertov
अब यह काम कर रहा है :) मैंने अपने ipython सत्र में 'opener.addheaders' को लटका दिया था। उस कोड को काम करना चाहिए (कम से कम मैक पर पायथन 2.6 पर मेरे लिए काम करता है) – albertov
मेरे द्वारा पोस्ट किया गया कोड मजबूत नहीं है। कभी-कभी सत्र टिक जाएगा, दूसरी बार यह नहीं होगा। मेरा अनुमान है कि गैर-मानव पहुंच को हतोत्साहित करने के लिए कुछ सर्वर-साइड लागू किया गया है (यानी: बल्कि सख्त सत्र अमान्यता नीतियां) – albertov