selenium登录后获取cookie使用requests请求数据
2019-06-10 11:04
1896 查看
版权声明:菜鸟学习,请多多指教. https://blog.csdn.net/weixin_43784462/article/details/91364344
最近在工作中有这么个需求,手工登录获取cookie后再使用requets爬取数据,在此记录下.
废话不多说,直接上代码:
#!D:\Python\Python36 python # encoding: utf-8 """ @author: sy_dove @license: (C) Copyright 2019-2020, Node Supply Chain Manager Corporation Limited. @contact: sydove08152@gmail.com @file: yttytt.py @time: 2019/6/2 23:01 @desc: """ import requests from selenium import webdriver import time # 使用selenium打开网址,然后让用户完成手工登录,再获取cookie url = 'https://passport.jd.com/new/login.aspx' driver = webdriver.Chrome() driver.get(url=url) time.sleep(30) driver.refresh() c = driver.get_cookies() print(c) cookies = {} # 获取cookie中的name和value,转化成requests可以使用的形式 for cookie in c: cookies[cookie['name']] = cookie['value'] print(cookies) driver.quit() time.sleep(5) headers = { 'authority': 'www.jd.com', 'method': 'GET', 'path': '/', 'scheme': 'https', 'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'zh-CN,zh;q=0.9', 'cache-control': 'max-age=0', 'upgrade-insecure-requests': '1', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36', } # 使用该cookie完成请求 response = requests.get(url='https://cart.jd.com/cart.action', headers=headers, cookies=cookies) print(response.text)
相关文章推荐
- 使用selenium自动登录淘宝并获取cookie
- Python爬虫scrapy框架发送POST请求以及自定义中间件(使用Cookie池,获取Cookie)——登录,爬取微博
- C#如何HttpWebRequest模拟登陆,获取服务端返回Cookie以便登录请求后使用
- 使用selenium获取cookie后,使用request请求,使用Bs4获取信息
- php使用curl存取cookie进行登录抓取数据示例
- 通过网络请求获取数据时,如果立即使用就会报错:数据为空
- requests使用cookie登录http
- PHP中使用CURL模拟登录并获取数据实例
- 如果你需要从不同的服务器(不同域名)上获取数据就需要使用跨域 HTTP 请求
- 使用httpclient4.3.X模拟post请求登陆网站获取cookie信息的操作
- (原创)使用AsyncTask(带修改线程池方式)+自定义ImageLoader+LRU算法对图片三级缓存及其显示优化(只有在ListView滑动停止的时候才去网络请求获取图片数据)
- Android使用OkHttp携带Cookie请求数据,并对Cookie进行持久化管理
- python中使用requests 模拟浏览器发送请求数据
- 在python中使用requests 模拟浏览器发送请求数据的方法
- 发送异步请求获取数据时,不使用客户端浏览器缓存
- AJAX 跨域请求的解决办法:使用 JSONP获取JSON数据
- 在基于vue的webpack脚手架开发中使用了代理转发,结果浏览器发出的请求中不带cookie导致登录时总是session失效怎么办?
- 宝宝小爬虫Selenium自动获取网页cookie+Curl数据查询
- Android登录client,验证码的获取,网页数据抓取与解析,HttpWatch基本使用
- Android请求获取Java后端数据,登录界面例子