利用beautifulSoup通过读取cookie信息自动登陆人人网

主要包含两个部分:

     1.利用beautifulSoup通过读取cookie信息,获取保存的网址信息

  • beautifulSoup.py

     2.利用py2exe打包,生成一个exe文件

  • setup_beautifulSoup.py
  • setup.py.bat
  • python.ico

 beautifulSoup.py文件详细代码:

 1 #!/usr/bin/env python
 2 #coding: utf-8
 3 
 4 import os
 5 import urllib, urllib2, cookielib
 6 from bs4 import BeautifulSoup
 7 url = 'http://www.renren.com'
 8  
 9 # 调用BeautifulSoup 通过HTML解释器中获取登陆网址
10 resp1 = urllib2.urlopen(url)
11 source = resp1.read()
12 soup1 = BeautifulSoup(source)
13 log_url = soup1('form', {'method': 'post'})[1]['action']
14  
15 info = {}
16 cj = cookielib.CookieJar()
17 opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
18 urllib2.install_opener(opener)
19  
20 try:
21     resp2 = urllib2.urlopen(log_url, urllib.urlencode(info))
22 except urllib2.URLError, e:
23     if hasattr(e, 'reason'):
24         print('reason:{0}'.format(e.reason))
25     if hasattr(e, 'code'):
26         print('code:{0}'.format(e.code))
27 
28 os.system('"C:/Program Files/Internet Explorer/iexplore.exe" %s'%log_url)
29 
30 print("Over")
View Code

 

setup_beautifulSoup.py: 设置打包的详细参数

#!/usr/bin/env python
#coding: utf-8

import py2exe
from distutils.core import setup

options = {py2exe: {'compressed': 1, #压缩
                    'optimize': 2,
                    'ascii': 1,
                    'includes': None,
                    'bundle_files':1, #打包所有文件成一个exe文件
                    }}

setup(version = '0.0.1', 
      description = 'ren ren', #如果是汉字,会报错
      name = 'ren ren', 
      options = options, 
      zipfile = None, # 打包时不产生library.rar文件
      windows = [{"script": "beautifulSoup.py",
                  "icon_resources": [(1, "F:\Eclipse\SaveFiles\python.ico")]
                  }])
View Code

setup.py.bat: 执行此文件,打包库文件,会生成一个exe执行文件

C:\Python27\python.exe setup_beautifulSoup.py py2exe
pause
View Code


打包生成的文件夹如下图所示,执行beautifulSoup.exe即可通过本地cookie信息访问人人网

posted @ 2013-07-29 18:12  开心星  阅读(610)  评论(0编辑  收藏  举报