用selenium获取cookies
前言:由于登录反爬措施的越来越麻烦,甚至出现了12306这种看图识物的无敌验证码,我只能说,我选择死亡。这就衍生出了使用selenium来获取获取cookies。
实例:获取qq空间cookies,亲测成功2018-3-7(注意点:chromedriver.exe的路径输入)
from selenium import webdriver
import requests
import json
import time
1 def get_cookies():
browser = webdriver.Chrome(executable_path="D:\SeleniumDemo-master\chromedriver.exe")
browser.get("https://user.qzone.qq.com/xxx/infocenter")# xxx 改为qq账号
input("请登陆后按Enter")
#print(browser.get_cookies())
cookie={}
for i in browser.get_cookies():
cookie[i["name"]] = i["value"]
with open("cookies.txt","w") as f:
f.write(json.dumps(cookie))
# time.sleep(5)
# button = browser.find_element_by_xpath('//*[@id="switcher_plogin"]')
# button.click() #browser.close()
def get_content():
user_agent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36"
with open("cookies.txt","r")as f:
cookies = f.read()
cookies = json.loads(cookies)
session = requests.session()
html = session.get("https://user.qzone.qq.com/xxx/infocenter",headers={"User-Agent":user_agent},cookies=cookies) # xxx改为qq账号
print(html.text) if __name__ == "__main__":
get_cookies()
get_content()
cookies一保存,至少短期内是可以省下登录的时间。
改进:(自动填写账号密码)
def get_cookies():
"""获取cookies保存为txt"""
browser = webdriver.Chrome(executable_path="D:\SeleniumDemo-master\chromedriver.exe")
browser.get("https://user.qzone.qq.com/") #input("请登陆后按Enter")
browser.switch_to.frame("login_frame")
button = browser.find_element_by_css_selector('#switcher_plogin')
button.click()
account = browser.find_element_by_css_selector("#u")
account.clear()
account.send_keys("") #此处写账号 password = browser.find_element_by_css_selector("#p")
password.clear()
password.send_keys("") #此处写密码 login_button = browser.find_element_by_css_selector("#login_button")
login_button.click()
#print(browser.get_cookies()) cookie={}
for i in browser.get_cookies():
cookie[i["name"]] = i["value"]
with open("cookies.txt","w") as f:
f.write(json.dumps(cookie))
input()
#browser.close()
用selenium获取cookies的更多相关文章
- selenium获取cookies并持久化登陆
		selenium获取cookies并持久化登陆 需求背景:  这几天需要写一个接口,用来批量上传数据,最开始考虑的是 UI 自动化,然后选值的时候自动化难以判别,最终选择 接口 自动化.  然后操 ... 
- selenium获取百度账户cookies
		[效果图] 效果图最后即为获取到的cookies,百度账户的cookies首次获取,需要手动登录,之后就可以注入cookies,实现免密登录. [代码] public class baiduCooki ... 
- Selenium 管理 Cookies
		使用 Selenium ,还可以方便地对 Cookies 进行操作,例如获取.添加 .删除 Cookies 等 from selenium import webdriver browser = web ... 
- selenium操作cookies实现免密登录,自动发微博
		一直想用selenium实现个小功能,比如发微博之类的,但是有的网站在登录会有验证码,没想到太好的方法解决,于是想到利用cookies来登录网站 第一步:获取一个可用的cookies,获取的cooki ... 
- 微博验证码的识别并登录获取cookies
		记得以前微博是用的宫格验证码,现在不一样了,用的是滑块验证码和 点触验证码,每天登陆的第一次基本用的是滑块,继续登录就都用的是点触验证码.所以滑块验证码不写,感兴趣的可以补上. 代码: 这里用的超级鹰 ... 
- C# HttpWebRequest获取COOKIES
		C# HttpWebRequest获取COOKIES byte[] bytes = Encoding.Default.GetBytes(_post); CookieContainer myCookie ... 
- selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口)
		网上有很多是selenium基于python来获取两个窗口句柄与切换,本文实现用python+selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口),且在每个窗口下进行一个搜索或翻译,然后截 ... 
- selenium获取元素后用click()点击没有作用,用Keys.ENTER就可以成功
		selenium获取元素后用click()点击没有作用,用键盘输入enter(Keys.ENTER)就可以成功 #coding = utf-8 from selenium import webdriv ... 
- Python网络爬虫笔记(四):使用selenium获取动态加载的内容
		(一) 说明 上一篇只能下载一页的数据,第2.3.4....100页的数据没法获取,在上一篇的基础上修改了下,使用selenium去获取所有页的href属性值. 使用selenium去模拟浏览器有点 ... 
随机推荐
- 最全的前端Git基础命令,看完保证你会!
			常见信息 master: 默认开发分支 origin:默认远程版本库 Head: 默认开发分支 Head^:Head 的父提交 创建新仓库 git init git init [project-nam ... 
- ABP从入门到精通(4):使用基于JWT标准的Token访问WebApi
			项目:asp.net zero 4.2.0 .net core(1.1) 版本 我们做项目的时候可能会遇到需要提供api给app调用,ABP动态生成的WebApi提供了方便的基于JWT标准的Token ... 
- Flutter - AAPT: error: resource android:attr/dialogCornerRadius not found.
			Launching lib\main.dart on Nokia X6 in debug mode... FAILURE: Build failed with an exception. * What ... 
- [UWP 自定义控件]了解模板化控件(1):基础知识
			1.概述 UWP允许开发者通过两种方式创建自定义的控件:UserControl和TemplatedControl(模板化控件).这个主题主要讲述如何创建和理解模板化控件,目标是能理解模板化控件常见的知 ... 
- 将 C# 枚举序列化为 JSON 字符串 实践
			一.定义枚举 public enum SiteTypeEnum { 中转部 = 1, 网点 = 2 } 还有 BooleanEnum 和 OptTypeEnum 这两个枚举,这里暂且省略了它们的定义. ... 
- 个人java框架 技术分析
			1.框架选型 spring-boot https://github.com/JeffLi1993/springboot-learning-example https://mp.weixin.qq.co ... 
- 基本的排序算法C++实现(插入排序,选择排序,冒泡排序,归并排序,快速排序,最大堆排序,希尔排序)
			博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/8529525.html特别不喜欢那些随便转载别人的原创文章又不给 ... 
- 《Linux内核分析》实践4
			<Linux内核分析> 实践四--ELF文件格式分析 20135211李行之 一.概述 1.ELF全称Executable and Linkable Format,可执行连接格式,ELF格 ... 
- 软件工程实践作业2  --梭哈游戏(java) 实践报告
			一,题目简介: 1.创建一副扑克牌 7------k 加入到集合对象中2.对扑克牌洗牌3.定义参与游戏的玩家的人,通过键盘输入,限定人数2-54.人数符合要求继续执行,不符合退出5.对玩家发牌,每个人 ... 
- JavaScript中的cookie
			cookie本身没什么可介绍的,但是cookie在JavaScript中,有很多需要注意的 首先,cookie在JavaScript中,是window.document对象的一个属性,所以访问cook ... 
