python+selenium实现cookie登录,并抓取指定类class下的html内容

2023-10-29

个人研究学习研究用

1、首先通过链接手动登录,https://www.educity.cn/。获取cookie信息

 

2、再使用站点cookie登录,跳转到https://uc.educity.cn/tiku/testReport.html?id=8067641,通过F12获取<div class="shitiText lh2">发现规律,所有答案部分都有shitiText

3、然后使用find_elements_by_class_name方法获取所有shitiText 下的内容,写入到html中

 

4、安装 selenium

pip install selenium

5、完整代码,

#!/usr/bin/python
import time
from selenium import webdriver
i = 0

base_url = 'https://www.educity.cn/login.html'
browser = webdriver.Chrome()
browser.maximize_window()
browser.implicitly_wait(10)
# browser.get(base_url)

# 使用cookie登录
browser.get(base_url)
cookies = {'name': 'cstk', 'value': 'e2e87cfa2d03cb692792a3f94a0bfedc', 'domain': 'educity.cn', 'path': '/', 'httpOnly': False, 'secure': False, }
browser.delete_cookie(cookies['name'])
browser.add_cookie(cookies)
browser.get(base_url)

# 登录后跳转到题目页面 2019年上半年软件设计师考试上午真题(专业解析+参考答案)
'''name = "2019年上半年软件设计师考试上午真题(专业解析+参考答案).html"
url = "https://uc.educity.cn/tiku/testReport.html?id=8064126"'''

name = "2019年下半年软件设计师考试上午真题(专业解析+参考答案).html"
url = "https://uc.educity.cn/tiku/testReport.html?id=8067641"

browser.get(url)
time.sleep(2)  # 等待5秒,等待网页加载完成
# 定位答案位置
like = browser.find_elements_by_class_name('shitiText')
# lists = []
bg = open(name, 'w+', encoding='utf-8')
for x in range(0, len(like)):
    # a = like[x].text 获取文本
    # 获取html
    a = like[x].get_attribute('innerHTML')
    # 删除头尾空格
    a = a.strip()
    # lists.append(a)
    bg.write('<h1>'+str(i)+'</h1>'+a)
    i += 1
bg.close()


 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python+selenium实现cookie登录,并抓取指定类class下的html内容 的相关文章

随机推荐

  • 华为机考秘诀-适用于华为校招机考、OD机考、社招机考、实习机考

    我是一名软件开发培训老师 我的学生已有数百人通过了华为各种机考 我分享的题目也帮助了几百人通过考试 命中率超高 下面我将分享一下机考的秘诀 每一个购买我专栏的同学 可以私聊我 免费提供一些辅导和答疑 1 机考语言的选择 选择Python 首
  • oracle+超出表空间限额,ORA-01536: 超出表空间 'USERS' 的空间限额

    Connected to Oracle Database 10g Enterprise Edition Release 10 2 0 1 0 Connected as SYS SQL gt conn mytest mytest orcl C
  • 【Docker】win10上修改docker的镜像文件存储位置(九)

    2020 12 21 补 Docker win10上修改docker的镜像文件存储位置 九 通过WSL2修改 或 源于评论 根据WSL 2模式的Linux容器 Hyper V模式的Linux容器还是Windows容器 可以使用不同的配置方式
  • python配置opencv、mediapip环境

    1 先安装python再安装pycharm以后 2 网上有的教程是在pycharm下选择虚拟的python环境下创建项目 并在设置中添加安装需要的环境 我使用这个方法opencv安装一直失败 所以选择使用命令行配置 3 环境的安装包路径在下
  • 快手引流需要钱吗?快手免费引流怎么做?

    其实做引流推广无非就是两种方式 付费引流 免费引流 付费引流就比较简单 有钱就行 但是免费引流说的就比较简单 真正执行起来 需要时间去沉淀 很多人就是因为坚持不下来 就认为免费引流不可能成功引流 所以这也是为什么这么多人一直都在找引流方法
  • 每天一个秃头小技巧-github 上找项目

    注 本内容基于韩顺平老师视频 一 watch start fork fork代表分支 分支越多说明喜欢你的项目并在上面开发 二 about topic readme 三 github开源项目搜索 1 找一个基于springboot的项目 i
  • 华为OD机试真题 Java 实现【机房布局】【2023Q1 200分】

    一 题目描述 小明正在规划一个大型数据中心机房 为了使得机柜上的机器都能正常满负荷工作 需要确保在每个机柜边上至少要有一个电箱 为了简化题目 假设这个机房是一整排 M表示机柜 I表示间隔 请你返回这整排机柜 至少需要多少个电箱 如果无解请返
  • termux-x11教程

    小粉丝已经求稿两个星期了 不写是不行了 termux x11 是Termux的一个图形化项目 官方是这么介绍的 A Termux add on app providing Android frontend for Xwayland 安装工具
  • MacBook【m1】创建django虚拟环境

    1 为什么使用虚拟环境 cd miniforge3我们在做开发时可能会同时开发多个项目 这些项目可能会依赖于不同的python环境 比如有的用到3 6有的用到3 7 这时我们创建不同版本的python 放到虚拟环境中给不同的项目分别提供其所
  • ReactJs实现树形结构的数据显示的组件

    1 该组件树形显示数据 2 组件中数据的请求方式为fetch方式 3 点击对应的数据前面的小三角 fetch请求改数据下对应的子数据 并展开该节点 4 将该组件的js less文件放到kpiTree目录下 在kpiTree目录下创建imag
  • Vue 路由

    1 vue router的理解 vue router是vue的一个插件 专门用来实现SPA应用 SPA也就是单页Web应用 特点是 整个应 用只有一个完整的页面 点击页面中的导航链接不会刷新页面 只会做页面的局部更新 数据需要 通过ajax
  • printf打印浮点数,%e %f %g的区别

    打印浮点数有 e f g三种格式 它们的区别如下 e 以科学计数法表示 小数点左边只有一位 小数点右边保留6位 过长则截去 不够则补零 接着是符号e 再接着就是10的多少次幂 f 要求小数点右边保留6位 过长则截去 不够则补零 g 没有上面
  • pandas学习笔记—agg()函数详解

    目录 1 agg 函数定义 2 举例 2 1 简单的列或行统计 2 2 自定义统计函数 2 3 先groupby 再agg 1 agg 函数定义 agg 函数是聚合函数 DataFrame agg func axis 0 args kwar
  • sprintf格式化字符串

    可以利用sprintf对字符串进行格式化 sprintf 目标字符串 格式 占位参数 格式化字符串 void test01 char buf 1024 memset buf 0 1024 sprintf buf 今天是 d年 d月 d 日
  • Failed to start docker.service: Unit not found(Docker服务起不来)

    原文https blog csdn net qq 34508530 article details 84989990 linux部署Docker出现 Failed to start docker service Unit not found
  • 多种方案教你实现iframe嵌套页面相互传参(父子通信)

    文章目录 需求描述 开始上手 上代码 父向子传值 方法一 通过URL传参 方法二 通过window postMessage 方法 注意事项 子向父传值 方法一 通过通过全局变量方式处理 方法二 通过通过window parent postM
  • DVWA-BruteFoce高级安全

    DVWA security high GET包结构 比起来之前low medium等级 可以看到这里多了一个参数 user token 为了防止重放攻击 但是明显能看出来user token就是用户输入密码的md5形式 直接用burpsut
  • 用ChatGPT生成openAI全景报告

    云孚科技基于业内领先的自然语言处理 知识图谱 语义匹配 智能写作等技术 打造了云孚开源情报系统YFINT 并结合ChatGPT模型成果 重磅推出OpenAI调研报告 ChatGPT简介 2022年11月30日 总部位于旧金山的OpenAI推
  • 【13届蓝桥杯复盘】九进制转十进制 顺子日期

    问题描述 九进制正整数 2022 下标9 转换成十进制等于多少 方法 权值展开 2 93 2 9 2 9 0 1478 如果 一定要用代码来实现 C 代码如下所示 include
  • python+selenium实现cookie登录,并抓取指定类class下的html内容

    个人研究学习研究用 1 首先通过链接手动登录 https www educity cn 获取cookie信息 2 再使用站点cookie登录 跳转到https uc educity cn tiku testReport html id 80