python实现自动登录人人网并访问最近来访者实例

yipeiwu_com7年前Python基础

本文实例讲述了python实现自动登录人人网并访问最近来访者的方法,分享给大家供大家参考。

具体方法如下:

##-*- coding : gbk -*- 
#在 
import os 
from xml.dom import minidom  
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') 
    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') 
    open('login_renren.html','w').write(conn.read()) 
    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,'用户名','密码') #这地方换成登录的用户名和密码  
 
#parse 解析网页 
r1 = re.compile('''''http://www.renren.com/profile.do\?portal=homeFootprint&ref=home_footprint&id=\d{9}''') 
li = r1.findall(open("login_renren.html","r").read()) 
#将解析到的最近来访的地址放入字典中
url_dict ={}for item in li: print item url_dict.setdefault(item) 
#访问最近来访者
for item in url_dict.iterkeys(): os.startfile(item) 

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python中实现对Timestamp和Datetime及UTC时间之间的转换

Python项目中很多时候会需要将时间在Datetime格式和TimeStamp格式之间转化,又或者你需要将UTC时间转化为本地时间,本文总结了这几个时间之间转化的函数,供大家参考。 一...

Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程

Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程

以此文记录Python与Tensorflow及其开发环境的安装与配置过程,以备以后参考。 1 硬件与系统条件 Win7 64位系统,显卡为NVIDIA GeforeGT 635M 2...

Python实现利用最大公约数求三个正整数的最小公倍数示例

本文实例讲述了Python实现利用最大公约数求三个正整数的最小公倍数。分享给大家供大家参考,具体如下: 在求解两个数的小公倍数的方法时,假设两个正整数分别为a、b的最小公倍数为d,最大公...

解决uWSGI的编码问题详解

发现问题 最近工作中遇到一个问题,在把 Flask 写的应用通过 Supervisor+uWSGI 部署到正式服务器上时,出现了这样的错误: Unable to print the...

python3中set(集合)的语法总结分享

介绍 set 顾明思义,就是个集合,集合的元素是唯一的,无序的。一个{ }里面放一些元素就构成了一个集合,set里面可以是多种数据类型(但不能是列表,集合,字典,可以是元组) 集 合 是...