用Python登陆人人网并发状态(在已有基础上进行了修改)

转载地址:http://blog.csdn.net/heyzol/article/details/17230179


一直想研究一下脚本自动登录,这里记录一下,以后自己捣鼓捣鼓。


  1. #encoding:utf-8  
  2. """ 
  3. This program is rewrite from http://www.oschina.net/code/snippet_946076_17870 
  4. """  
  5. import urllib2, urllib, cookielib, datetime, re  
  6. class spider():  
  7.     def __init__(self, email, password):  
  8.         self.email = email  
  9.         self.password = password  
  10.         self.domain = 'renren.com'  
  11.         try:  
  12.             cookie = cookielib.CookieJar()  
  13.             cookieProc = urllib2.HTTPCookieProcessor(cookie)  
  14.         except:  
  15.             raise  
  16.         else:  
  17.             opener = urllib2.build_opener(cookieProc)  
  18.             urllib2.install_opener(opener)  
  19.   
  20.     def login(self):  
  21.         print 'Loging in...'  
  22.         url = 'http://www.renren.com/PLogin.do'  
  23.         postdata = {  
  24.                     'email':self.email,  
  25.                     'password':self.password,  
  26.                     'domain':self.domain  
  27.                     }  
  28.         req       = urllib2.Request(url, urllib.urlencode(postdata))  
  29.         self.file = urllib2.urlopen(req).read()  
  30.         reInfo = re.compile(r"get_check:'(.*?)',get_check_x:'(.*?)'.*?'id':'(.*?)'", re.DOTALL)  
  31.         info = reInfo.findall(self.file)  
  32.         self.id   = info[0][2]  
  33.         self.tok  = info[0][0]  
  34.         self.rtk  = info[0][1]  
  35.   
  36.     def publish(self, content):  
  37.         url1 = 'http://shell.renren.com/' + self.id + '/status'  
  38.         postdata = {  
  39.                     'content'     : content,  
  40.                     'hostid'      : self.id,  
  41.                     'requestToken'self.tok,  
  42.                     '_rtk'        : self.rtk,  
  43.                     'channel'     : 'renren'  
  44.                     }  
  45.         req1 = urllib2.Request(url1, urllib.urlencode(postdata))  
  46.         self.file1 = urllib2.urlopen(req1).read()  
  47.         print 'U have post a message :%s' % content  
  48.           
  49. user = raw_input('Renren.com User: ')  
  50. pswd = raw_input('Renren.com Password: ')  
  51. renrenspider = spider(user, pswd)  
  52. renrenspider.login()  
  53. content = raw_input('Please input your message :')  
  54. renrenspider.publish(content)  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值