2012-01-04 3 views
6

RSS 피드에 파이썬을 사용하여 쿠키가 필요한 요청을 보내려고합니다. 나는 urllib2를 사용하고 적절한 표제를 추가하는 것으로 충분하다고 생각했지만, 요청은 unautherized라고 계속 말하고있다.쿠키가있는 urllib2

내 생각에 원격 사이트의 문제 일 수는 있지만 확실치 않았습니다. 쿠키와 함께 urllib2를 어떻게 사용합니까? 내가 requests 패키지, docs을 사용

+0

쿠키를 설정하는 방법 만 알고 싶다면 [이 질문] (http://stackoverflow.com/questions/3334809/python-urllib2-how-to-send-cookie-with-urlopen-request)는 swer. –

+0

링크를 제공해 주셔서 감사합니다. 나는 그것을 체크하고 같은 방식으로 쿠키를 설정하고있다. (사용되는 각 lib마다 약간 다르지만) 아직 행운이 없다. – neolaser

답변

5
import urllib2 
opener = urllib2.build_opener() 
opener.addheaders.append(('Cookie', 'cookiename=cookievalue')) 
f = opener.open("http://example.com/") 
13

(HTTPLIB, 기계화 등, 컬) 이것에 대한 더 나은 패키지는 urlib2 (제정신 API)보다 사용하기 훨씬 쉽게,있다. 응답이 약간의 쿠키가 포함 된 경우

, 당신은 그들에게 빠르게 액세스 할 수 있습니다

url = 'http://httpbin.org/cookies' 
cookies = dict(cookies_are='working') 
r = requests.get(url, cookies=cookies) 
r.content # '{"cookies": {"cookies_are": "working"}}' 

http://docs.python-requests.org/en/latest/user/quickstart/#cookies :

url = 'http://httpbin.org/cookies/set/requests-is/awesome' 
r = requests.get(url) 
print r.cookies #{'requests-is': 'awesome'} 

가 서버에 자신의 쿠키를 보내려면 쿠키 매개 변수를 사용할 수 있습니다

+6

요청은 확실히 더 좋지만, [내장 urllib2와 cookielib로 첫 번째 예제와 비슷한] 할 수있다. (http://docs.python.org/library/cookielib.html#examples), – dbr