pythoncookie
A. python如何保存cookie到本地
python如何保存cookie到本地的方法:
第一次访问页面后,Server可将Cookie信息加入HTTP
Header返回给浏览器,浏览器会自动将这些信息保存在本地;
当再次访问相同域名时,浏览器将对应Cookie信息随请求一起发送,Server端可读取这些信息进行处理。
Cookie可设置过期时间,到期后由浏览器自动删除;
当我们要返回页面时,首先输出如下:
[python]
view
plain
print
"Content-type:
text/plain\n"
它其实是一个HTTP
Header,
连续碰到两个换行表示HTTP
Header部分结束,剩余部分将被做为数据处理;
包含了Cookie后输出大致如下:
[python]
view
plain
print
"Content-Type:
text/html"
print
"Set-Cookie:
session=12345"
print
#
多加一个换行表示HTTP
Header部分结束
代码:
setcookie.py
[python]
view
plain
#!/usr/bin/env
python
import
Cookie
import
datetime
import
random
expiration
=
datetime.datetime.now()
+
datetime.timedelta(days=30)
cookie
=
Cookie.SimpleCookie()
cookie["session"]
=
random.randint(0,1000000000)
cookie["session"]["domain"]
=
"localhost"
cookie["session"]["path"]
=
"/"
cookie["session"]["expires"]
=
\
expiration.strftime("%a,
%d-%b-%Y
%H:%M:%S
PST")
print
"Content-type:
text/plain"
print
cookie.output()
print
print
"Cookie
set
with:
"
+
cookie.output()
getcookie.py
[python]
view
plain
#!/usr/bin/env
python
import
Cookie
import
os
print
"Content-type:
text/plain\n"
try:
cookie
=
Cookie.SimpleCookie(os.environ["HTTP_COOKIE"])
print
"session
=
"
+
cookie["session"].value
except
(Cookie.CookieError,
KeyError):
print
"session
cookie
not
set!"
B. python 爬虫为什么要获取响应的cookie
Cookie是指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。比如说有些网站需要登录后才能访问某个页面,在登录之前你想抓取某个页面内容是不允许的。那么可以利用Urllib库保存登录的Cookie,然后再抓取其他页面,这样就达到了你的目的。爬虫过程中只用python来保存cookie信息模拟登录是不行的,爬虫限制有很多,例如同一IP短时间内多次访问同一页面,或者同一账户短时间内多次进行相同操作等等。
C. python爬虫使用Cookie如何进行
Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密),比如说有些网站需要登录后才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的。那么我们可以利用Urllib2库保存我们登录的Cookie,然后再抓取其他页面就达到目的了,那么python爬虫使用Cookie如何进行?
D. Python 使用cookie登陆的问题
cookie是有过期时间的,网站设置了有个值,所以到了过期时间就会失效
退出了的话服务器会知道你的cookie里session已经过期。
大概有,比如经常保持此会话活动状态。
不过最好还是把你的代码改进为脚本自动登录获取cookie,Python的requests库文档里有讲怎么配置登录:http://cn.python-requests.org/zh_CN/latest/