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时间整形转标准格式的示例分享
Feb 14 Python
Python标准库之sqlite3使用实例
Nov 25 Python
Python遍历目录的4种方法实例介绍
Apr 13 Python
详解Python中的相对导入和绝对导入
Jan 06 Python
python matplotlib中文显示参数设置解析
Dec 15 Python
Python编程scoketServer实现多线程同步实例代码
Jan 29 Python
python merge、concat合并数据集的实例讲解
Apr 12 Python
Python使用win32com模块实现数据库表结构自动生成word表格的方法
Jul 17 Python
Python 实现文件打包、上传与校验的方法
Feb 13 Python
django drf框架中的user验证以及JWT拓展的介绍
Aug 12 Python
python 实现目录复制的三种小结
Dec 04 Python
Django Auth用户认证组件实现代码
Oct 13 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
PHP 工厂模式使用方法
2010/05/18 PHP
php写入、删除与复制文件的方法
2015/06/20 PHP
php获取图片信息的方法详解
2015/12/10 PHP
PHP将数据导出Excel表中的实例(投机型)
2017/07/31 PHP
PHP 中魔术常量的实例详解
2017/10/26 PHP
AJAX分页的代码(后台asp.net)
2011/02/14 Javascript
在chrome浏览器中,防止input[text]和textarea在聚焦时出现黄色边框的解决方法
2011/05/24 Javascript
js中将URL中的参数提取出来作为对象的实现代码
2011/08/16 Javascript
疯狂Jquery第一天(Jquery学习笔记)
2012/05/11 Javascript
js向上无缝滚动,网站公告效果 具体代码
2013/11/18 Javascript
js style动态设置table高度
2014/10/21 Javascript
js面向对象之静态方法和静态属性实例分析
2015/01/10 Javascript
浅谈javascript中的DOM方法
2015/07/16 Javascript
基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
2016/01/22 Javascript
第二次聊一聊JS require.js模块化工具的基础知识
2016/04/17 Javascript
jquery siblings获取同辈元素用法实例分析
2016/07/25 Javascript
AngularJS入门教程之双向绑定详解
2016/08/18 Javascript
详解用webpack2.0构建vue2.0超详细精简版
2017/04/05 Javascript
让网站自动生成章节目录索引的多个js代码
2018/01/07 Javascript
解决使用Vue.js显示数据的时,页面闪现原始代码的问题
2018/02/11 Javascript
解决淘宝cnpm 安装后cnpm不是内部或外部命令的问题
2018/05/17 Javascript
微信小程序中weui用法解析
2019/10/21 Javascript
Vue中避免滥用this去读取data中数据
2021/03/02 Vue.js
python机器学习之神经网络(一)
2017/12/20 Python
pandas使用apply多列生成一列数据的实例
2018/11/28 Python
django从后台返回html代码的实例
2020/03/11 Python
CSS3 3D立方体效果示例-transform也不过如此
2016/12/05 HTML / CSS
Lulu Guinness露露·吉尼斯官网:红唇包
2019/02/03 全球购物
电子商务专业实习生自我鉴定
2013/09/24 职场文书
外科实习自我鉴定
2013/10/06 职场文书
中学生期中自我鉴定
2014/04/20 职场文书
结婚主持人致辞
2015/07/28 职场文书
彻底理解golang中什么是nil
2021/04/29 Golang
Java实现房屋出租系统详解
2021/10/05 Java/Android
Python批量解压&压缩文件夹的示例代码
2022/04/04 Python
python在package下继续嵌套一个package
2022/04/14 Python