day4 selenium爬取数据总结
day4 selenium爬取数据
一、selenium基本操作
导入相关模块:
from selenium.webdriver import Chrome
(一)、创建浏览器对象
b = Chrome()
(二)、打开网页(需要爬取哪个页面的数据就打开该页面对应的网页地址)
案例:爬取豆瓣电影250排行榜
b.get('https://movie.douban.com/top250?start=0&filter=')
(三)、获取网页源代码(注意:不管以什么方式更新了界面内容,page_source也会自动更新)
print(b.page_sourse) # 获取豆瓣top250的页面源代码
二、selenium的翻页
导入相关模块
import time # 控制停顿时间的模块from selenium.webdriver import Chrome
(一)、翻页方法1
- 找到不同页面地址的变化规律,利用循环实现多页数据的请求
b = Chrome() # 这个是打开浏览器,一定要放在循环的外面for x in range(0, 256, 25): # 找出的页数变化b.get('https://movie.douban.com/top250?start={x}&filter=')print(b.page_source)
(二)、翻页方法2
- 点击翻页按钮,刷新页面内容,在刷新后再次获取网页源代码
导入模块:
from selenium.webdriver.common.by import By
b = Chrome()
b.get('https://movie.douban.com/top250?start=0&filter=')for _ in range(5):print(b.page_source)# 获取下一页按钮# next = b.find_element(By.CLASS_NAME, 'next')# 点击下一页按钮# next.click()b.find_element(By.CSS_SELECTOR, '.next')
- 翻页方法2涉及的知识点
- selenium获取标签
浏览器对象.b.find_element(获取方式,数据) —— 返回符合条件的第一个标签,结果是标签对象
浏览器对象.b.find_elements(获取方式,数据) —— 返回符合条件的所有标签,结果是列表,列表中的元素是标签对象获取方式:
By.ID —— 通过ID属性值获取标签
By.CLASS_NAME —— 通过class属性值获取标签
By.CSS_SELECTOR —— 通过css选择器获取标签
By.LINK_TEXT —— 通过a标签的标签内容获取标签
By.PARTIAL_LINK_TEXT —— 通过标签内容所包含的部分内容来获取完整标签
- 操作标签
1)输入框输入内容:输入框对应的标签.send_kyes(需要输入的内容) —— 括号里输入需要输入的内容
2)点击标签:标签对象.click()
三、用代码控制浏览器滚动
js中页面滚动的代码:window.scrollBy(x方向的偏移量,y方向的偏移量)
滚动1次
b.execute_script('window.scrollBy(0,500)') # 顺着Y轴滚动500
滚动多次
for x in range(10): # 滚动10次b.execute_script('window.scrollBy(0,500)')time.sleep(1) # 每滚动一次就停顿1秒
input(‘结束’) # 如果不想关闭浏览器就加个input,入股要关闭则不加
相关文章:
day4 selenium爬取数据总结
day4 selenium爬取数据 一、selenium基本操作 导入相关模块: from selenium.webdriver import Chrome(一)、创建浏览器对象 b Chrome()(二)、打开网页(需要爬取哪个页面的数据就打开该页面对应的网页地址) 案例:爬取豆瓣电影…...
信息收集之WAF绕过
信息收集之WAF绕过前言一、工具进行目录扫描1. 工具的下载2. 工具的使用二、Python代码进行目录扫描前言 对于web安全无WAF的信息收集,大家可以查看如下链接的文章: web安全之信息收集 对于有WAF信息收集,看如下所示:(…...
从数据到智慧,TOOM舆情监测系统让你的决策更加精准!
当今社会信息化程度日益提高,网络平台已成为人们获取最新信息的主要途径,无论是个体还是组织、政府还是企业,都需要通过各种手段及时了解社会舆情,把握市场动态,调整经营策略。而舆情监测系统无疑是这些手段中最为有效…...
ChatGPT中文版网页插件-如何体验chatGPT
ChatGPT中文版网页插件 目前,OpenAI的ChatGPT并没有官方提供中文版的网页插件,但是,一些第三方网站和开发者已经开始提供一些针对中文的自然语言处理和对话机器人服务。以下是其中一些例子: 问答机器人: 像小蛮腰和小…...
Docker的网络模式
Docker常见的几种网络模式 docker network ls 查看使用了哪些网络 [rootcentos8-nat-168-182-152 ~]# docker network ls NETWORK ID NAME DRIVER SCOPE c0184302f6a8 bridge bridge local 420492e04276 host host local …...
基于vue3.2、three实现地图在地图加载
基于vue3.2、three实现地图在地图加载code效果预览地址code 在这里插入代码片 import { ref, onMounted } from "vue"import * as THREE from "three"; import Earth from "./textures/Earth.png" import EarthSpec from "./textures/Eart…...
【C++】---优先级队列 仿函数
文章目录优先级队列介绍优先级队列使用仿函数优先级队列模拟实现优先级队列介绍 优先队列是一种容器适配器 ,它的底层实现是堆,虽然它的名字里面有队列,但它并没有队列先进先出的特性 优先级队列定义在头文件中,其模板参数有三个…...
图的遍历算法
图的遍历1.连通图的深度优先搜索1.1. 递归1.2.非递归2.连通图的广度优先遍历3. 非连通图的深度(广度)优先遍历1.连通图的深度优先搜索 算法思想:从图中某个顶点vi出发,访问此顶点,然后依次从v1的各个未被访问的邻接点…...
【蓝桥杯集训·每日一题】 AcWing 3996. 涂色
文章目录一、题目1、原题链接2、题目描述二、解题报告1、思路分析2、时间复杂度3、代码详解三、知识风暴区间DPUnique函数一、题目 1、原题链接 3996. 涂色 2、题目描述 有 n 个砖块排成一排,从左到右编号为 1∼n。 其中,第 i 个砖块的初始颜色为 ci。 …...
人工智能中的Web端编程
Java是当前的主流编程语言之一,常年稳居TIOBE编程语言排行榜前五。Java的使用领域非常广泛,包括了桌面端编程、Web端编程、移动端编程等几乎所有的编程领域。Java是Web端编程使用最广泛的编程语言之一。要学习Web端编程,需要了解Java语言的知…...
jsp+mysql+J2EE校园自行车租赁系统cdA1A2程序
本系统的具体功能有以下六项: 1、用户信息管理模块:用户需要注册成为本网站的用户,同时修改自己的用户资料,在必要时修改自己的登陆密码。 2、车辆查询模块:用户可以根据自己的要求,按照不同的查询方式来查询自己想要的…...
当营养遇上肠道菌群:探究其对儿童健康的影响
谷禾健康 越来越多的证据表明,肠道菌群定植紊乱和微生物多样性减少与全球非传染性疾病 (NCD) 的增加有关。影响儿童和青少年的非传染性疾病包括肥胖及其相关合并症、自身免疫性疾病、过敏性疾病和哮喘。饮食变化也与非传染性疾病的发病机制有关,并且由于…...
vue尚品汇商城项目-day01【4.完成非路由组件Header与Footer业务】
文章目录4.完成非路由组件Header与Footer业务4.1使用组件的步骤(非路由组件)本人其他相关文章链接4.完成非路由组件Header与Footer业务 在咱们项目开发中,不在以HTML CSS 为主,主要搞业务、逻辑 开发项目的流程: (1)…...
IDEA安装教程(图文详解,一步搞定)
文章目录第一步:官网下载IDEA第二步:卸载旧的IDEA(没有则跳过)第二步:安装IDEA第一步:官网下载IDEA 地址:https://www.jetbrains.com/idea/download/other.html 第二步:卸载旧的I…...
【01 DualCam Porting】
1、配置camera_custom_stero_setting.h a、增加sensor配置 /vendor/mediatek/proprietary/custom/mt6765/hal/camera/camera_custom_stereo_setting.h注意: 1)IMGOYUV Size:在有FOV crop的情况下,不能配置为sensor full size,建议比full size 小或者配置为fov crop的值…...
redis --- string类型的使用
目录 一、string类型使用 1.1、set key value参数解析 1.2、同时设置/获取多个键值 1.3、获取/设置指定区间范围内的值 1.4、数值增减 1.5、获取字符串长度和内容追加 1.6、分布式锁 1.7、getset(先get再set) 一、string类型使用 1.1、set key value参数解析 SET key v…...
康耐视visionpro-机器视觉定位引导-经验总结-来自视觉人粉丝分享
1、机器人吸取电路板,移动到拍照位置,并在电路板上找一个标记点,并且,通过机器人示教把当前电路板能够准确的放入到目标位置。 2、机器人吸取电路板吸取电路板,在x,y方向进行移动,总共移动4个位置ÿ…...
包管理工具npm
一:package.json 在某个文件路径下,执行 npm init。就会生成package.json文件。大致如下: {"name": "test","version": "1.0.0","description": "测试","main": &q…...
ChatGPT正进军各行各业,抓住机遇,拥有无限的可能性。
每一个新技术的出现都会对各行各业产生冲击,但关键在于如何抓住这个机遇。ChatGPT是一项非常具有前途的技术,它可以在许多领域为人们提供更好的服务和体验。这项技术的优势之一是它可以快速而准确地理解和解释自然语言,从而使人们可以更轻松地…...
Maven 多模块管理
多模块管理简单地理解就是一个 Java 工程项目中不止有一个 pom.xml 文件,会在不同的目录中有多个这样的文件,进而实现 Maven 的多模块管理 在多人使用Maven协作开发项目时,尤其是稍微上点规模的项目,每个RD的工作都细分到具体功能…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
