此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出。欢迎各位前来交流。(部分材料来源网络,若有侵权,立即删除)
本人博客所有文章纯属学习之用,不涉及商业利益。不合适引用,自当删除!
若被用于非法行为,与我本人无关
说明
- 首先运行cookie获取的程序,手动登录一次后得到对应的cookie用于下次自动化模拟登录
- 虽然但是,第一次需要手动登录,但是cookie一般可以保存15分钟至更久,所以还是方便了很多的,下次使用就可以不必再登录
cookie获取
import time
import json
from selenium import webdriver
driver = webdriver.Chrome()
url='https://weibo.com/'
driver.get(url)#发送请求
#打开之后,手动登录一次
time.sleep(3)
input('完成登陆后点击enter:')
time.sleep(3)
dictcookies = driver.get_cookies() # 获取cookies
jsoncookies = json.dumps(dictcookies) # 转换成字符串保存
with open('cookie.txt', 'w') as f:
f.write(jsoncookies)
print('cookies保存成功!')
- 这边先使用豆瓣进行测试
- 可以看到运行情况良好
- 在文件中也找到了保存的cookie
模拟登录
from selenium import webdriver
import time
import json
driver = webdriver.Chrome()
url='https://www.zhihu.com/'
driver.get(url)#发送请求
#打开之后,手动登录一次
time.sleep(3)
with open('cookie.txt', 'r', encoding='utf8') as f:
listCookies = json.loads(f.read())
for cookie in listCookies:
cookie_dict = {
'domain': '#这里填对应的网址去掉www,比如 .huya.com .zhihu.com',
'name': cookie.get('name'),
'value': cookie.get('value'),
"expires": '',
'path': '/',
'httpOnly': False,
'HostOnly': False,
'Secure': False
}
driver.add_cookie(cookie_dict)
print(cookie_dict)
driver.refresh() # 刷新网页,才能实现cookie导入
- 知乎实现成功测试一下微博
测试
微博
- 打开窗口
- 手动登录
- 获取成功
- 模拟登录试试
- 成功