python_爬虫_通过selenium获取人人网cookie值并…
2018-08-17 09:48:42来源:博客园 阅读 ()
平台:mac
网站:人人网
最近练习爬虫登陆,方法一是找页面里的js文件,通过解析js文件找到cookie信息再保持。但现在的站点登陆都有验证码,而且最烦的是request时data表单里的值基本上没有不加密的,js学的不好,就别想着破解了。所以想起了用的比较少的selenium模块,用于模拟登陆并获取cookie。
import time,random from selenium import webdriver import requests from urllib import request from lxml import etree driver = webdriver.Chrome(executable_path=r'/Applications/Google Chrome.app/chromedriver') driver.get('http://www.renren.com/PLogin.do') time.sleep(2) driver.find_element_by_id('email').clear() driver.find_element_by_id('email').send_keys('myusername') # 输入用户名 driver.find_element_by_id('password').clear() driver.find_element_by_id('password').send_keys('mypassword') # 输入密码 img_url = 'http://icode.renren.com/getcode.do?t=web_login&rnd='+str(random.random()) request.urlretrieve(img_url,'renren_yzm.jpg') try: driver.find_element_by_id('icode').clear() img_res = input('输入验证码:') # 如果需要输入验证码,可以手工,或者接口给打码平台 driver.find_element_by_id('icode').send_keys(img_res) except: pass driver.find_element_by_id('autoLogin').click() # 自动登陆 driver.find_element_by_id('login').click() # 登陆 time.sleep(3) cookie_items = driver.get_cookies() # 获取cookie值 post = {} # 保存cookie值 for cookie in cookie_items: post[cookie['name']] = cookie['value'] print(post['t']) # 人人网登陆后需要保持登陆的cookie信息 driver.quit() # 退出selenium # ------------------------------------------------------------ url = 'http://www.renren.com/265025131/profile' headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36', 'Cookie':'t='+post['t'], } response = requests.get(url,headers=headers) print('-'*50) html = etree.HTML(response.text) title = html.xpath('//title/text()') print('目前得到的页面信息',title) print(response.url)
总结:使用selenium模拟登陆、获取cookie没用多少时间,但想当然的以为进入renren的个人页面必须使用获取的所有cookie值,徒浪费N多个小时,结果只保留了cookie内的't'值,就做到保持登陆,所以,不断的测试,是比较重要的。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:粘包
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash