2014-01-14 7 views
1

을 허용 :파이썬 요청 : 나는 파이썬 요청을 사용하고 쿠키

import requests 
image_url = my_url 

headers = {'User-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.76 Safari/537.36', 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8','Accept-Encoding':'gzip,deflate,sdch'} 
r = requests.get(image_url, headers=headers) 

내가 쿠키 설정을 허용하지 않는 브라우저에서 요청을 전송 한 경우와 동일하게 반응을하고 싶습니다. 그 이유는 일부 사이트에서 내 브라우저가 쿠키를 허용하는지 여부에 따라 다른 응답을하고 쿠키가 아닌 응답이 필요하기 때문입니다.

답변

2

쿠키가 전송되는지 여부. 쿠키 헤더를 설정하지 않으면 쿠키가 보내지지 않습니다. 따라서 귀하의 질문에 대한 요청은 쿠키가없는 것으로 간주되어야합니다.

서버은 응답에 쿠키를 보냅니다. 다음 요청에서 설정하면 서버가이를 인식합니다. 다음 요청에서 설정하지 않으면 서버는 쿠키를 허용하지 않음을 알게됩니다.

내가 쿠키를 전송하고 있지 않다 http://docs.python-requests.org/en/latest/user/quickstart/#cookies

+0

를 볼 수 있지만,이 사이트는 내가 어떤 쿠키를 허용하지 않으려는 것을 깨닫게합니까? 서버에 쿠키를 허용 할 수 있는지 여부를 확인하는 if-else 문이 있다고 가정 해 보겠습니다. – user984003

+2

@ user984003 : 서버가 세션 쿠키를 설정하고 * 후속 * 요청에서 해당 쿠키를 볼 수없는 경우 쿠키를 설정하지 않을 것으로 가정해야합니다. javascript 기술도 있지만'requests'와 같은 라이브러리를 사용할 때는 적용 할 수 없습니다. –

+0

@ user984003 : 그러나 어쨌든 쿠키 설정이 무엇인지 서버가 감지 할 수있는 확실한 방법은 없습니다. 따라서 모든 상황에서 작동 할 수있는 쿠키를 허용하지 않음을 나타 내기 위해 요청에 아무 것도 설정하지 않아도됩니다. –