python模拟登陆人人网(通过BeautifulSoup module)

通过BeautifulSoup来登陆人人网。可以通过info = {‘email‘:‘‘,‘password‘:‘‘}进行账号密码的初始化,一个BeautifulSoup的简单应用,过一阶段会写一个关于BeautifulSoup框架使用的小手册,欢迎大家关注啊,求各路读者大大多加指导。

#-*- coding:utf-8 -*-
import urllib
import urllib2
import cookielib
import re
from BeautifulSoup import BeautifulSoup

#获取人人网账号的名称
def getTitle(page):
        pattern = re.compile('<title>(.*?)</title>',re.S)
        matchResult = re.search(pattern,page)
        if matchResult and matchResult.group(1):
            return matchResult.group(1)
        

url = "http://www.renren.com/SysHome.do"
response1 = urllib2.urlopen(url)
source = response1.read()
soup1 = BeautifulSoup(source)

log_url = soup1('form',{'method':'post'})[0]['action']

#info = {'email':'XXXX','password':'XXXX'}
#账号密码必须在运行之前指定
info = {'email':'','password':''}

#LWPCookieJar提供可读写操作的cookie文件,存储cookie对象
cookiejar = cookielib.LWPCookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookiejar))
urllib2.install_opener(opener)

try:
    response2 = urllib2.urlopen(log_url,urllib.urlencode(info))
    text = response2.read()
    
    print "+"*20+"welcome to 京东放养的爬虫"+"+"*20
    print "%s成功登陆人人网。。。"%getTitle(text)
    print "+"*20+"welcome to 京东放养的爬虫"+"+"*20
    
except urllib2.URLError,e:
    if hasattr(e,'reason'):
        print "reason:[0]".format(e.reason)
    if hasattr(e,'code'):
        print "code:[0]".format(e.code)
        



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。