1

我正在尝试对 python 的请求。虽然我不确定饼干。我使用的代码很简单。

dn = requests.get('http://www.dn.se')
print dn.cookies
<<class 'requests.cookies.RequestsCookieJar'>[]>

没有饼干。但是当我在浏览器中查看时,我会从网站上收到很多 cookie。

4

1 回答 1

6

该页面本身不设置 cookie:

$ curl -D - -o /dev/null http://www.dn.se
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Cache-Control: public, max-age=49
Date: Thu, 18 Jul 2013 15:09:37 GMT
Transfer-Encoding:  chunked
Connection: keep-alive
Connection: Transfer-Encoding
Expires: Tue, 01 January 2013 01:00:00 GMT

100  511k    0  511k    0     0  1664k      0 --:--:-- --:--:-- --:--:-- 1809k

没有Set-Cookie设置标题。该页面确实会加载其他资源,因此您的浏览器会为图像、JavaScript 和 CSS 发送额外的 GET 请求,每个请求都可能Set-Cookie在响应中包含一个标头。JavaScript 调用也可以设置 cookie。

现代浏览器允许您检查网页加载的所有资源的响应标头。在这些响应中查找Set-Cookie标题。

于 2013-07-18T15:11:48.793 回答