cookie的工作原理是什么?如何支持脚本之家?

优采云 发布时间: 2021-05-28 07:06

  cookie的工作原理是什么?如何支持脚本之家?

  1、首先,我们必须首先了解cookie的工作原理。

  Cookie由服务器生成并发送到User-Agent(通常是浏览器)。浏览器会将Cookie的键/值保存到某个目录中的文本文件中。下次您请求相同的消息网站将cookie发送到服务器(前提是浏览器设置为启用cookie)。 cookie名称和值可以由服务器端开发本身定义。对于JSP,还可以直接编写jsessionid,以便服务器可以知道该用户是否为有效用户以及是否需要再次登录。

  2、之后,我们将获得Cookie以便用户正常登录。

  Python提供了cookieJar库,只需将cookieJar实例作为参数传递给urllib2中的打开程序即可。

  然后访问登录页面一次,cookie已保存。通过该实例访问所有页面后,将存在用于正常登录的cookie。

  以人人为例。

  

#encoding=utf-8

import urllib2

import urllib

import cookielib

def renrenBrower(url,user,password):

#登陆页面,可以通过抓包工具分析获得,如fiddler,wireshark

login_page = "http://www.renren.com/PLogin.do"

try:

#获得一个cookieJar实例

cj = cookielib.CookieJar()

#cookieJar作为参数,获得一个opener的实例

opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))

#伪装成一个正常的浏览器,避免有些web服务器拒绝访问。

opener.addheaders = [('User-agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)')]

#生成Post数据,含有登陆用户名密码。

data = urllib.urlencode({"email":user,"password":password})

#以post的方法访问登陆页面,访问之后cookieJar会自定保存cookie

opener.open(login_page,data)

#以带cookie的方式访问页面

op=opener.open(url)

#读取页面源码

data= op.read()

return data

except Exception,e:

print str(e)

#访问某用户的个人主页,其实这已经实现了人人网的签到功能。

print renrenBrower("http://www.renren.com/home","用户名","密码")

  以上登录网页操作方法的python实现是编辑器共享的所有内容,希望给您提供参考,并希望您可以更多地支持脚本库。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线