从入门到入土:Python爬虫学习|Selenium实现cookie获取以及模拟登录|豆瓣|知乎|微博|通用

此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出。欢迎各位前来交流。(部分材料来源网络,若有侵权,立即删除)
本人博客所有文章纯属学习之用,不涉及商业利益。不合适引用,自当删除!
若被用于非法行为,与我本人无关

Selenium实现cookie获取以及模拟登录

说明

  • 首先运行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导入

在这里插入图片描述
在这里插入图片描述

  • 知乎实现成功测试一下微博

测试

微博

  • 打开窗口

在这里插入图片描述

  • 手动登录

在这里插入图片描述

  • 获取成功
    在这里插入图片描述

在这里插入图片描述

  • 模拟登录试试

在这里插入图片描述
在这里插入图片描述

  • 成功
  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值