selenium携带cookies模拟登陆CSDN的实现


Posted in Python onJanuary 19, 2021

首先是获取cookies保存到本地

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time  : 2020/12/20 11:00
# @Author : huni
# @File  : cookies获取.py
# @Software: PyCharm
from selenium import webdriver
from time import sleep
import json
if __name__ == '__main__':
  driver = webdriver.Chrome(executable_path='./chromedriver.exe')
  driver.maximize_window()
  driver.get('https://passport.csdn.net/login?code=public')
  sleep(2)
  driver.find_element_by_xpath('/html/body/div[2]/div/div/div[1]/div[2]/div[5]/ul/li[1]/a').click()
  sleep(6)
  dictCookies = driver.get_cookies() # 获取list的cookies
  jsonCookies = json.dumps(dictCookies) # 转换成字符串保存
  with open('csdn_cookies.txt', 'w') as f:
    f.write(jsonCookies)
  print('cookies保存成功!')

然后是利用本地的cookies模拟登陆csdn首页

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time  : 2020/12/20 11:10
# @Author : huni
# @File  : 使用cookies登录csdn.py
# @Software: PyCharm
from selenium import webdriver
import json
def browser_initial():
  browser = webdriver.Chrome(executable_path='./chromedriver.exe')
  browser.maximize_window()
  browser.get(
    'https://www.csdn.net/')
  return browser

def log_csdn(browser):
  with open('csdn_cookies.txt', 'r', encoding='utf8') as f:
    listCookies = json.loads(f.read())

  # 往browser里添加cookies
  for cookie in listCookies:
    cookie_dict = {
      'domain': '.csdn.net',
      'name': cookie.get('name'),
      'value': cookie.get('value'),
      "expires": '',
      'path': '/',
      'httpOnly': False,
      'HostOnly': False,
      'Secure': False
    }
    browser.add_cookie(cookie_dict)
  browser.refresh() # 刷新网页,cookies才成功

if __name__ == "__main__":
  browser = browser_initial()
  log_csdn(browser)

cookies是有时间限制的,定期获取即可,登陆之后可以进行其他自动化操作,比如给别人的博客评论,点赞等等。

到此这篇关于selenium携带cookies模拟登陆CSDN的实现的文章就介绍到这了,更多相关selenium cookies模拟登陆内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python控制台中实现进度条功能
Nov 10 Python
深入解析Python中函数的参数与作用域
Mar 20 Python
Python3.4编程实现简单抓取爬虫功能示例
Sep 14 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
Python I/O与进程的详细讲解
Mar 08 Python
python实现超级玛丽游戏
Mar 18 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
Apr 13 Python
如何解决cmd运行python提示不是内部命令
Jul 01 Python
python 深度学习中的4种激活函数
Sep 18 Python
Python numpy大矩阵运算内存不足如何解决
Nov 19 Python
Python绘制词云图之可视化神器pyecharts的方法
Feb 23 Python
Python基础之字符串格式化详解
Apr 21 Python
django项目中使用云片网发送短信验证码的实现
Jan 19 #Python
windows系统Tensorflow2.x简单安装记录(图文)
Jan 18 #Python
Python结合百度语音识别实现实时翻译软件的实现
Jan 18 #Python
用Python自动清理系统垃圾的实现
Jan 18 #Python
详解Python爬虫爬取博客园问题列表所有的问题
Jan 18 #Python
python爬虫爬取图片的简单代码
Jan 18 #Python
python中用Scrapy实现定时爬虫的实例讲解
Jan 18 #Python
You might like
将数字格式的计算结果转为汉字格式
2006/10/09 PHP
js限制checkbox勾选的个数以及php获取多个checkbbox的方法深入解析
2013/07/18 PHP
php中ltrim()、rtrim()与trim()删除字符空格实例
2014/11/25 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
2017/09/16 PHP
Laravel解决nesting level错误和隐藏index.php的问题
2019/10/12 PHP
学习ExtJS Panel常用方法
2009/10/07 Javascript
jquery实现鼠标拖动图片效果示例代码
2014/01/09 Javascript
JQuery以JSON方式提交数据到服务端示例代码
2014/05/05 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
2014/09/10 Javascript
配置Grunt的Task时通配符支持和动态生成文件名问题
2015/09/06 Javascript
原生JS封装ajax 传json,str,excel文件上传提交表单(推荐)
2016/06/21 Javascript
新手学习前端之js模仿淘宝主页网站
2016/10/31 Javascript
Vue.js常用指令汇总(v-if、v-for等)
2016/11/03 Javascript
JS实现直接运行html代码的方法
2017/03/13 Javascript
React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
2017/05/26 Javascript
浅谈vue项目如何打包扔向服务器
2018/05/08 Javascript
jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法分析
2019/03/06 jQuery
在vue中利用v-html按分号将文本换行的例子
2019/11/14 Javascript
Node.js API详解之 dns模块用法实例分析
2020/05/15 Javascript
[05:02][DOTA2]DOTA进化论 第一期
2013/09/27 DOTA
[02:02]特效爆炸!DOTA2珍宝之瓶待你开启
2018/08/21 DOTA
python调用shell的方法
2013/11/20 Python
python实现斐波那契递归函数的方法
2014/09/08 Python
Python cookbook(数据结构与算法)找到最大或最小的N个元素实现方法示例
2018/02/13 Python
python 对key为时间的dict排序方法
2018/10/17 Python
使用Python的datetime库处理时间(RPA流程)
2019/11/24 Python
Python 带星号(* 或 **)的函数参数详解
2021/02/23 Python
资生堂美国官网:Shiseido美国
2016/09/02 全球购物
美国乡村商店:Plow & Hearth
2016/09/12 全球购物
SNIDEL官网:日本VIVI杂志人气少女第一品牌
2020/03/12 全球购物
手术室护士自我鉴定
2013/10/14 职场文书
食堂个人先进事迹
2014/01/22 职场文书
《生物入侵者》教学反思
2016/02/16 职场文书
MySQL 可扩展设计的基本原则
2021/05/14 MySQL
SONY AN-LP1 短波有源天线放大器图
2022/04/05 无线电
一文搞懂Java中的注解和反射
2022/06/21 Java/Android