利用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")
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")] }])
setup.py.bat: 执行此文件,打包库文件,会生成一个exe执行文件
C:\Python27\python.exe setup_beautifulSoup.py py2exe
pause
打包生成的文件夹如下图所示,执行beautifulSoup.exe即可通过本地cookie信息访问人人网