python人人网登录应用实例,python人人应用实例
python人人网登录应用实例,python人人应用实例
本文实例讲述了python人人网登录应用的实现方法,分享给大家供大家参考。
具体方法如下:
import re import urllib import urllib2 import cookielib import datetime import time from urllib2 import URLError,HTTPError #第一个参数为日志文件,第二个参数为用户名,第三个参数为密码 def renren_login(logfile,username,password): logfile.write(str(datetime.datetime.now()) + ' renren/r/n') cj = cookielib.CookieJar() post_data = urllib.urlencode( {'email':username, 'password':password, } ) path = 'http://www.renren.com/PLogin.do' opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) urllib2.install_opener(opener) req = urllib2.Request(path,post_data) try: conn = urllib2.urlopen(req) except URLError,e: print 'URLError' logfile.write('URLError:' + str(e.code) + '/r/n')#http://www.renren.com/SysHome.do return False except HTTPError,e: logfile.write('HTTP Error:'+e.reason + '/r/n') return False if conn.geturl() == 'http://www.renren.com/home': print 'success' logfile.write('Task finished/r/n') return conn.read() else: print 'Task Failed' logfile.write('Task failed/r/n') # 登录成功,返回整个页面的代码 file_object = open("log.txt",'w') login_index = renren_login(file_object,'xxxxxx','xxxx')
希望本文所述对大家的Python程序设计有所帮助。
碰到验证码咋办?这里分两种情况处理:
-
1.google那种验证码,凉拌
-
2.简单的验证码:字符个数有限,只使用了简单的平移或旋转加噪音而没有扭曲的,这种还是有可能可以处理的,一般思路是旋转的转回来,噪音去掉,
然后划分单个字符,划分好了以后再通过特征提取的方法(例如PCA)降维并生成特征库,然后把验证码和特征库进行比较。这个比较复杂,一篇博文是说不完
的,这里就不展开了,具体做法请弄本相关教科书好好研究一下。
-
3.事实上有些验证码还是很弱的,这里就不点名了,反正我通过2的方法提取过准确度非常高的验证码,所以2事实上是可行的。
大致的思路是先抓包,分析登陆包以及服务器返回的数据包的内容,然后用Python写。可以使用urllib2,cookiejar,beautifulsoup(这个用来分析网页,当然,自己用正则构造一个类效率会更高)这几个类。
相关内容
- 编程语言Python的发展史,编程语言python
- python实现自动登录人人网并访问最近来访者实例,pyt
- python的re模块应用实例,pythonre应用实例
- python网络编程实例简析,python编程实例简析
- Python实现的一个简单LRU cache,pythonlrucache
- Python实现从url中提取域名的几种方法,pythonurl
- Python中unittest用法实例,pythonunittest
- Python中itertools模块用法详解,pythonitertools
- python迭代器实例简析,python实例简析
- python实现在无须过多援引的情况下创建字典的方法,
评论关闭