数据采集:selenium 提取 Cookie 自动登陆
写在前面
- 工作需要,简单整理
- 博文内容涉及 通过
selenium
实现自动登陆 - 理解不足小伙伴帮忙指正
对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》
未登陆用户
保存 cookie
假设登陆用户名为 : chinaz_7356287
我们需要获取一些 CDN
的数据,代码很简单,不做说明,自动登陆 站长之家的 CDN 网站 https://cdn.chinaz.com/
from selenium import webdriver
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
import re
import pandas as pd
import jsonbrowser = webdriver.Chrome()
browser.get("https://cdn.chinaz.com/")
time.sleep(4)
# 需要根据页面编写
browser.find_element(By.CSS_SELECTOR, ".userbar").find_element(By.TAG_NAME, "a").click()
print("等待登录...")
while True:try:time.sleep(10)# 需要根据页面编写 判断用户名是否存在if browser.find_element(By.CSS_SELECTOR,".username").text == "chinaz_7356287":print("已登录,保存 cookie...")with open('cookie.txt', 'w', encoding='u8') as f:json.dump(browser.get_cookies(), f) browser.close()print("cookie保存完成,游览器已自动退出...")else:time.sleep(3)except:passprint("登陆页面未出现,重试中")finally:pass
获取到的 JSON 数据
[{"domain": ".chinaz.com","expiry": 1693423590,"httpOnly": false,"name": "chinaz_topuser","path": "/","sameSite": "Lax","secure": false,"value": "92da5ff9-69ac-c0b7-73ab-040cb089d48f"},{"domain": ".chinaz.com","expiry": 1693884390,"httpOnly": true,"name": "ucvalidate","path": "/","sameSite": "None","secure": true,"value": "9aba1eb9-8b70-019b-8352-43ff4719eb84"},{"domain": ".chinaz.com","httpOnly": false,"name": "Hm_lpvt_ca96c3507ee04e182fb6d097cb2a1a4c","path": "/","sameSite": "Lax","secure": false,"value": "1692588387"},{"domain": ".chinaz.com","expiry": 1724124387,"httpOnly": false,"name": "Hm_lvt_ca96c3507ee04e182fb6d097cb2a1a4c","path": "/","sameSite": "Lax","secure": false,"value": "1692588387"}
]
使用 cookie 自动登陆
from seleniumwire import webdriver
import json
import time# 自动登陆
browser = webdriver.Chrome()
with open('C:\\Users\山河已无恙\\Documents\GitHub\\reptile_demo\\demo\\cookie.txt', 'r', encoding='u8') as f:cookies = json.load(f)browser.get('https://cdn.chinaz.com/')
for cookie in cookies:browser.add_cookie(cookie)browser.get('https://cdn.chinaz.com/')time.sleep(10000)
以登陆用户
对于已经存在的用户,我们直接通过当前会话可以获取cookie 信息,然后直接替换对应的值
[{"domain": ".chinaz.com","expiry": 1693423590,"httpOnly": false,"name": "chinaz_topuser","path": "/","sameSite": "Lax","secure": false,"value": "92da5ff9-69ac-c0b7-73ab-040cb089d48f"},{"domain": ".chinaz.com","expiry": 1693884390,"httpOnly": true,"name": "ucvalidate","path": "/","sameSite": "None","secure": true,"value": "9aba1eb9-8b70-019b-8352-43ff4719eb84"},{"domain": ".chinaz.com","httpOnly": false,"name": "Hm_lpvt_ca96c3507ee04e182fb6d097cb2a1a4c","path": "/","sameSite": "Lax","secure": false,"value": "1692588387"},{"domain": ".chinaz.com","expiry": 1724124387,"httpOnly": false,"name": "Hm_lvt_ca96c3507ee04e182fb6d097cb2a1a4c","path": "/","sameSite": "Lax","secure": false,"value": "1692588387"}
]
控制台输入 console.log(document.cookie);
打印 cookie ,然后复制对应的 value 到上面的 JSON
串
console.log(document.cookie);VM64:1 toolUserGrade=DA558BECA59696EB6D6F7073658259093B6A1006BF1EE9768104ED4EF435DFFE7A7CCE826E9718B7BF5917ABBB8378EB9F2A2DF83F2D261B6ABB5FF77D3EB74948E7E207D35739840897873E9CED6A06188A7269E8D6621D2A3EB35366EE2939BD52587A8E5FD9CFD5B7FADCEA248B51B971062D27AB402FF41885786B87AD00; bbsmax_user=096a40c7-f2ba-8f87-f56a-bb8c65838157; chinaz_zxuser=c55d2eaa-e630-99a5-3d19-82c6cbadc2e3; Hm_lvt_ca96c3507ee04e182fb6d097cb2a1a4c=1692590966; Hm_lpvt_ca96c3507ee04e182fb6d097cb2a1a4c=1692590966; toolbox_urls=1.180.204.161|jiuzhoufangyuan.cn|daoxinwuliu.com|www.lzfjyl.com|lzfjyl.com|herunnongye.com|danyu.com.cn|www.danyu.com.cn|encrypt-k-vod.xet.tech; chinaz_topuser=f38f3b0f-4c0d-57d8-8f2d-35180d6e13a5
之后可以使用相同的方式登陆
博文部分内容参考
© 文中涉及参考链接内容版权归原作者所有,如有侵权请告知
© 2018-2023 liruilonger@gmail.com, All rights reserved. 保持署名-非商用-相同方式共享(CC BY-NC-SA 4.0)
相关文章:
数据采集:selenium 提取 Cookie 自动登陆
写在前面 工作需要,简单整理博文内容涉及 通过 selenium 实现自动登陆理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的&#x…...
[Go版]算法通关村第十三关黄金——数字数学问题之数论问题(最大公约数、素数、埃氏筛、丑数)
目录 题目:辗转相除法(求最大公约数)思路分析:辗转相除法(也叫欧几里得算法)gcd(a,b) gcd(b,a mod b)复杂度:时间复杂度 O ( n l o g ( m a x ) ) O(nlog(max)) O(nlog(max))、空间复杂度 O (…...
Qt双击某一文件通过自己实现的程序打开,并加载文件显示
双击启动 简述方法一方法二注意 简述 在Windows系统中,双击某类扩展名的文件,通过自己实现的程序打开文件,并正确加载及显示文件。有两种方式可以到达这个目的。 对于系统不知道的扩展名的文件,第一次打开时,需要自行…...
硬件产品的量产问题------硬件工程师在产线关注什么
前言: 产品开发测试无误,但量产缺遇到很多不良甚至DOA问题。 硬件开发过程中如何确保产线的治具、生产及硬件工程师在产线需要关注一些什么。 坚信:好的产品是要可以做出来的。 1、禁忌: 禁忌热插拔;禁忌测试不防呆…...
Vulnhub系列靶机--- Hackadmeic.RTB1
系列:Hackademic(此系列共2台) 难度:初级 信息收集 主机发现 netdiscover -r 192.168.80.0/24端口扫描 nmap -A -p- 192.168.80.143访问80端口 使用指纹识别插件查看是WordPress 根据首页显示的内容,点击target 点击…...
redis高级----------主从复制
redis的四种模式:单例模式;主从模式;哨兵模式,集群模式 一、主从模式 单例模式虽然操作简单,但是不具备高可用 缺点: 单点的宕机引来的服务的灾难、数据丢失单点服务器内存瓶颈,无法无限纵向扩…...
posgresql通过PL/pgSQL脚本统一修改某字段大小写
项目在做postgresql数据库适配时遇到了某些问题,需要统一将某个模式含id字段的全部表,将id字段由小写转换为大写,可以通过PL/pgSQL脚本实现。 先确保当前用户有足够的权限 DO $$ DECLARE current_table text;current_column text; BEGIN --…...
iPhone卫星通信SOS功能如何在灾难中拯救生命
iPhone上的卫星紧急求救信号功能在从毛伊岛野火中拯救一家人方面发挥了至关重要的作用。这是越来越多的事件的一部分,在这些事件中,iPhone正在帮助人们摆脱危及生命的情况。 卫星提供商国际通信卫星组织负责移动的高级副总裁Mark Rasmussen在接受Lifewir…...
NOIP真题答案 过河 数的划分
过河 题目描述 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧。在桥上有一些石子,青蛙很讨厌踩在这些石子上。由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上的一串整点…...
图为科技-边缘计算在智慧医疗领域的作用
边缘计算在智慧医疗领域的作用 随着科技的进步,智慧医疗已成为医疗行业的重要发展趋势。边缘计算作为新兴技术,在智慧医疗领域发挥着越来越重要的作用。本文将介绍边缘计算在智慧医疗领域的应用及其优势,并探讨未来发展方向。 一、边缘计算…...
Linux配置nginx反向代理
在云服务器上部署高并发的服务,使用Nginx作为反向代理是一种常见的做法,可以实现流量分发、负载均衡,同时提升系统的可靠性和性能。 步骤概览: 安装Nginx: 确保服务器已安装Nginx。若未安装,可使用适用于你…...
随便记录记录
统一整理一下各种 pandas读csv import pandas as pd ## 默认会将第一行作为列 df pd.read_csv(path_to_your_file.csv) ## 传递 headerNone 参数来告诉 Pandas 不要将第一行 df pd.read_csv(path_to_your_file.csv, headerNone) ## 使用多种选项来处理数据,如指…...
UbuntuDDE 23.04发布,体验DeepinV23的一个新选择
UbuntuDDE 23.04发布,体验DeepinV23的一个新选择 昨晚网上搜索了一圈,无意看到邮箱一条新闻,UbuntuDDE 23.04发布了 因为前几天刚用虚拟机安装过,所以麻溜的从网站下载了ISO文件,安装上看看。本来没多想,…...
RabbitMQ 消费者
RabbitMQ的消费模式分两种:推模式和拉模式,推模式采用Basic.Consume进行消费,拉模式则是调用Basic.Get进行消费。 消费者通过订阅队列从RabbitMQ中获取消息进行消费,为避免消息丢失可采用消费确认机制 消费者 拉模式拉模式的实…...
软件测试面试真题 | 什么是PO设计模式?
面试官问:UI自动化测试中有使用过设计模式吗?了解什么是PO设计模式吗? 考察点 《page object 设计模式》:PageObject设计模式的设计思想、设计原则 《web自动化测试实战》:结合PageObject在真实项目中的实践与应用情…...
GB2312转UTF-8部分中文乱码
现象 最近写了个txt导入,客户反馈有时候导入的数据,会出现个别中文乱码的现象,但是我之前已经做过编码转换处理了,统一转成了UTF-8。 比如“鞠婧祎”,导入进来是这样: 排查思路 首先看了一下这个文本的编码格式&am…...
项目——电子词典(客户端、服务器交互,字典导入,单词查询)
一、项目要求 登录注册功能,不能重复登录,重复注册单词查询功能历史记录功能,存储单词,意思,以及查询时间基于TCP,支持多客户端连接采用数据库保存用户信息与历史记录将dict.txt的数据导入到数据库中保存。…...
jenkins 是什么?
一、jenkins 是什么? Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson,主要用于持续、自动的构建/测试软件项目、监控外部任务的运行。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行&#…...
无涯教程-PHP - sql_regcase()函数
sql_regcase() - 语法 string sql_regcase (string string) 可以将sql_regcase()函数视为实用程序函数,它将输入参数字符串中的每个字符转换为包含两个字符的带括号的表达式。 sql_regcase() - 返回值 返回带括号的表达式字符串以及转换后的字符。 sql_regcase…...
cesium 实现鼠标中键拖动地图
cesium默认左键拖动地图,中键旋转,再绘图时带来诸多不便。所以改成鼠标中键按下拖动地图,鼠标左键选点。代码如下:【感谢chatGPT】 //改为中建拖动// 假设 viewer 是你的 Cesium Viewer 实例const cameraController viewer.scene…...
低压风机单片机方案
低压风机通常由电机、转子、机壳、进气管、出气管、齿轮和减速机等组成。电机带动转子旋转,旋转的转子带动齿轮和减速机转动,进而形成空气被吸入转子内部,通过旋转而产生的离心力把气体压缩,并将气体排出。 低压风机方案的主控型…...
R语言06-R语言的基本运算
概念 R语言支持多种基本运算,包括算术运算、逻辑运算、比较运算和向量化运算等。 代码示意 逻辑运算 a <- TRUE b <- FALSElogical_and <- a & b # 逻辑与 logical_or <- a | b # 逻辑或 logical_not <- !a # 逻辑非比较运算 x <…...
Docker容器:docker-compose管理创建LNMP服务并运行Wordpress网站平台
文章目录 一.项目环境1. 环境描述2.项目需求 二.部署过程1.安装Docker2.安装Docker加速器3.Docker-Compose安装部署4.准备依赖文件、配置nginx5.配置mysql6.配置php7.编写docker-compose.yml8.验证 三.容器快照,然后将Docker镜像打包成tar包备…...
实业兴国 守护种源 —— 白露木實®农业的活力之风
高科技领域,芯片是生命线;而在农业领域,种源与芯片在高科技领域的重要性是相同的。保护、发展、培育我国的种质资源,是中国农业发展至为关键的一环。但是,因为思想、观念、认识、技术等方面的原因,让我们错…...
Web3.0
一、Web3.0是什么 Web3.0(有时称为“分布式Web”或“去中心化Web”)是对互联网的下一代演进的概念。它代表了一种更加分散、去中心化和用户掌控的互联网模式,与传统的Web2.0模型有很大不同。 以下是Web3.0的一些关键特征和概念:…...
精密图纸被窃,知名手表品牌Seiko遭BlackCat勒索软件攻击
据BleepingComputer消息,日本著名手表制造商Seiko在7月末遭到了网络攻击,8月21日,BlackCat(又名ALPHV)勒索软件组织在其网站上宣布对这起攻击事件负责。 8 月 10 日,Seiko发布了一份数据泄露通知࿰…...
K8S如何部署Redis(单机、集群)
在今天的讨论中,我们将深入研究如何将Redis数据库迁移到云端,以便更好地利用云计算的优势提高数据管理的灵活性。 Redis(Remote Dictionary Server)是一个开源的、基于内存的数据结构存储系统,它可以用作数据库、缓存和消息代理。Redis支持多…...
Flask狼书笔记 | 03_模板
文章目录 3 模板3.1 模板基本使用3.2 模板结构组织3.3 模板进阶 3 模板 模板(template):包含固定内容和动态部分的可重用文件。Jinja2模板引擎可用于任何纯文本文件。 3.1 模板基本使用 HTML实体:https://dev.w3.org/html5/htm…...
MySQL 数据备份和数据恢复
目录 一、数据备份 1、概述 2、MySQLdump命令备份 1)备份单个数据库中的所有表 2) 备份数据中某个或多个表 3) 备份所有数据库 4)备份多个库 5) 只备份一个表或多个表结构 二、数据恢复 三、数据备份与恢复应用 一、数据备份 1、概述 数据备…...
软考高级系统架构设计师系列论文八十二:论软件的可维护性设计
软考高级系统架构设计师系列论文八十二:论软件的可维护性设计 一、摘要二、正文三、总结一、摘要 随着软件大型化,复杂化的发展,软件维护所耗费的资源越来越多,软件可维护性设计日益得到重视。我单位近几年开发综合业务 ATM交换机,用户对交换机的可维护性要求很高。我参加…...
网站开发接口/手机最新产品新闻
家里装修所用到的电线中的是多少平方的线其实是平方毫米,只不过是大家简化了而已,现在一般家庭的家用电器都比较多,用电量也大,可以按照不同需要分别布线。1:照明的用电量不大,用1.5平方的铜线就可以&#…...
农业门户网站模板/一个具体网站的seo优化
2019独角兽企业重金招聘Python工程师标准>>> Azure Storage 是微软 Azure 云提供的云端存储解决方案,当前支持的存储类型有 Blob、Queue、File 和 Table。 笔者在《Azure Table storage 基本用法》一文中,介绍了 Table Storage 的基本用法&am…...
嘉善公司网站建设联系人/全网推广哪家正宗可靠
在Phpcms V9后台默认的内容编辑器中,出于完全考虑,默认是禁止JavaScript脚本的,所以我们在添加文章时,虽然加入了js代码,但实际上并没有起作用,而是以文本形式显示。于是就很多时候是需要修改这一限制&…...
数据库主机wordpress/长沙在线网站的目标客户
Past Releases of Elastic Stack Software | Elastic 各个版本下载地址 es历史版本下载地址 https://www.elastic.co/cn/downloads/past-releases#elasticsearch...
网站制作能赚多少钱/免费的网页入口
今天目标是将sass的相关内容熟悉学习一遍。 sass增加了规则,变量,选择器等特性,便于维护和使用,使开发提高了效率。 其后缀名是.scss, 在写好scss文件之后,需要对其进行转换,转换成css文件&am…...
企业网站设计建设服务器/百度账号怎么改名字
Max09在模型到处的模型和U3D场景的尺寸不一致,Max09中的1m导到U3D中,只有0.01m,这时可以在U3D中将模型的FbxImporter中将Scale Factor改为1。 上述事情也可以通过脚本直接处理: using UnityEditor;using UnityEngine;using System…...