准备工具:
fiddler
Python+selenium
安装fidder
fidder官方下载地址
fidder首次安装需要设置才能抓取https参考如下
fidder设置抓取https
开始
1、打开fidder
2、通过浏览器登录正常登录百度账号。像这样!
3、查看Fiddler获取到的登录请求的Cookie。找到Host为“passport.baidu.com”的URL,在右侧窗口查看该请求的Cookie。为什么是这两个?(试的<->)
然后,找到重要的两个参数“BAIDUID”和“BDUSS”。
4、编写Selenium自动化测试脚本,跳过登录。
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
# 添加Cookie
driver.add_cookie({'name':'BAIDUID','value':'6FC26726C46E744593310AA7515:FG=1'})
driver.add_cookie({'name':'BDUSS','value':'5OYWFSdFJBeTlBMHVGVnhvLWZlUFQ5YUhKN0c3cll5LUhiMUlPYk1RcHNYMGxiQVFBQUFBJCQAAAAAAAAAAAEAAAB2gOWut9y2t7XE0KHQocTxNjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'})
# 刷新页面
driver.refresh()
sleep(5)
# 获取登录用户名并打印
username = driver.find_element_by_class_name("user-name").text
print(username)
#关闭浏览器
driver.quit()
首先,访问百度首页,处于未登录状态。
然后,通过Selenium所提供add_cookie()方法添加Cookie信息。
最后,刷新页面,现在已经是登录状态了,获取登录之后的用户名并打印。
注意:
如果是首次抓取https请求不要忘了按照fidder设置抓取https中的方法添加证书,不然fidder是抓取不到cookie的,如下图