使用selenium爬取腾讯热点新闻
在爬取之前我一直都陷入了一个误区,我认为只用selenium就可以实现这个工作,事实上它确实是可以,只不过selenium是自动化测试工具,可以驱动浏览器(有界面,无界面)来执行特定的操作,可以模仿人的点击下拉等各种基本操作,对于js加密的信息的抓取非常有效。它更适用于动态和交互。所以在提取信息得时候结合bs4或者xpath更方便一点。经过大佬指点,这里强推xpath.![在这里插入图片描述](https://img-blog.csdnimg.cn/20200427094746986.png)
打开网址会发现页面默认加载10条信息,随着页面向下滚动,页面是自动加载的。
这里借用某大佬的思想:
- 调用 window.srollBy’执行页面滚动。
- 利用random对单次滚动距离、滚动时间进行选取,模拟人工操作。
import random
for i in range(20):pixel = random.randint(800,1000)driver.execute_script(f'window.scrollBy(0,{pixel})')time.sleep(random.random()+1)
完整代码如下:
import time
from selenium import webdriver
from lxml import etreedriver = webdriver.Chrome('D:\software\Annaconda3\chromedriver')
driver.get('https://news.qq.com/')
由于页面默认加载10条,这里实现页面滚动,动态加载。
import random
for i in range(20):pixel = random.randint(800,1000)driver.execute_script(f'window.scrollBy(0,{pixel})')time.sleep(random.random()+1)html = driver.page_sourcetree = etree.HTML(html)infos = tree.xpath('//ul[@class="list"]/li/div[@class="detail"]/h3/a')
infolist = []count = 0for i,info in enumerate(infos):title = info.xpath('text()')[0]href = info.xpath('@href')[0]print(i+1,title,href)infolist.append([i+1,title,href])
结果如下:
存为csv文件
#保存import pandas as pd
name = ['序号','新闻标题','新闻链接']
df = pd.DataFrame(columns=name, data=infolist)
df.to_csv('腾讯新闻热点.csv',index=False)
使用selenium爬取腾讯热点新闻相关推荐
- 爬虫 spider08——爬取腾讯娱乐新闻【使用redis去重】
根据 爬虫 spider07--爬取腾讯娱乐新闻 https://blog.csdn.net/qq_41946557/article/details/102566143 进行修改! 代码: impor ...
- python编程100例头条-python 简单爬取今日头条热点新闻(一)
今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...
- python爬虫今日头条_python 简单爬取今日头条热点新闻(
今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...
- python爬虫爬取今日头条_python 简单爬取今日头条热点新闻(一)
今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...
- scrapy实践二(selenium爬取腾讯漫画【失败】)
前言 一个月前曾学习过爬取腾讯动漫全站的示例代码,现在再用scrapy尝试 过程 新建spider爬虫 编写普通selenium爬虫爬取漫画 观察网页,确定目标 本次目标是爬取热门排行下的漫画 右键检 ...
- python 头条 上传_python 简单爬取今日头条热点新闻(一)
今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...
- 使用selenium爬取腾讯动漫!国漫也有好看的!
前言 本来只是想学习一下selenium模块的简单使用,然后一直添加功能,感觉能把它变成一个项目了,于是乎,就有了这篇文章 写得很烂,速度很慢,但不影响这是我的第一次尝试,如果师傅们花时间看看我的代码 ...
- python爬虫今日头条_python 简单爬取今日头条热点新闻(一)
今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...
- 使用selenium爬取腾讯动漫
文章目录 前言 一.Download.py 1.导入模块 2.构造Download类 3.Download 类中的函数 (1)login() (2)loading() (3)comic_info() ...
最新文章
- NuGet学习笔记(3) 搭建属于自己的NuGet服务器
- java虚拟机 什么语言_什么是Java虚拟机?为什么Java被称为平台无关的编程语言...
- java web mvc思想介绍
- TypeError系列之:TypeError: 'tuple' object does not support item assignment
- 【IDEA】推荐一些好用的IDEA插件
- mysql开方_MySQL数学函数的实际用法
- Antlr中文文档初稿2(《ANTLR树分析器》)
- monkey_使用_脚本编写
- php redis 秒杀demo
- 如何把windowsXP系统主题成Windows7风格windowsxp主题包
- 软件测试项目实战经验附视频以及源码【商城项目,app项目,电商项目,银行项目,医药项目,金融项目】
- kux格式怎么转换成mp3_优酷kux1080转码工具 1080p kux格式转换mp4|优酷kux格式转换成MP4格式...
- 一文带你了解降压型稳压芯片原理
- 分享一个强大的数据可视化低代码开发平台
- 牛客网第二场I--car(简单图论)
- 5G网络普及提速,你身边的这些行业已经站上了风口
- vue2-element,vue3-element-plus 的列表翻页的序号
- 【Celery】Celery的简易部署和应用
- java遍历无极树的源码
- MindSpore:环境问题案例
热门文章
- 计算机登录域时很慢,win7 登入域 网络一直处于 正在识别 要10几分钟 导致关机慢 - Microsoft Community...
- 在QML中定义JS资源- Stateless library的意义
- python骰子小游戏
- 设置 EXTRA_CFLAGS 以编译 debug 版本 dpdk 库
- [HTML+CSS] 仿京东首页项目实战
- Linux 终端 scp 把服务器中项目/文件 下载到本地
- 基于FPGA的数码管动态扫描显示(含代码)
- 计算机技工高级职称,高级工程师与高级技师职称有什么区别?快来了解一下吧...
- linux suds 只能在当前目录,使用Python和suds 0.4的SAXParseException?
- Linux黑洞路由命令,配置黑洞路由 - osc_ywuazj5t的个人空间 - OSCHINA - 中文开源技术交流社区...