python登录人人网

来源:互联网 发布:sql server 2012版本 编辑:程序博客网 时间:2024/06/03 02:48

首先分析一下人人网登录页面

使用firefox打开http://www.renren.com/网址,按F12查看页面信息。

可以看到红色框体部分就是登录按钮请求的地址,只要输入正确的用户名密码就可以登录成功。

所以整个登录过程十分简单,代码如下:

#encoding=utf-8import urllib2,urllib,cookielibdef 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","test_python01@163.com","userfortest1")

后面的邮箱和密码是我为了测试而注册的。

直接运行代码,登录后的页面将在控制带打印出来,其内容与正常登录后的页面源码一致。

对于一些页面,是由js拼接起来的,所以需要得到js内容才能得到真实页面,这就需要用到其他库了。


0 0
原创粉丝点击