js爬虫puppeteer库 解决网页动态渲染无法爬取

news/2024/4/30 4:49:24

我们爬取这个网址上面的股票实时部分宇通客车(600066)_股票价格_行情_走势图—东方财富网

我们用正常的方法爬取会发现爬取不下来,是因为这个网页这里是实时渲染的,我们直接通过网址接口访问这里还没有渲染出来

于是我们可以通过下面的代码来进行爬取:

npm install puppeteer
//index.js
const puppeteer = require('puppeteer');(async () => {const browser = await puppeteer.launch();const page = await browser.newPage();try {await page.goto('http://quote.eastmoney.com/sh600066.html', { timeout: 60000 }); // 设置页面加载超时时间为 60 秒} catch (error) {console.error('Navigation timeout error:', error);}// 等待页面加载完成//sider_brief是我们查找的盒子类名await page.waitForSelector('.sider_brief');const stockName = await page.$eval('.sider_brief', element => element.textContent.trim());console.log('股票名称:', stockName);await browser.close();
})();

爬取成功


优化

既然是股票的东西,那么我们当然要实时监控啊,所以我们加入一个定时脚本,一直运行我们的js

run_script.bat:

:loop
node index.js
timeout /t 1 >nul
goto loop

运行:

run_script.bat

就实现了实时监控

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.tangninghui.cn.cn/item-12931.htm

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】初识Linux,虚拟机安装Linux系统,配置网卡

前言 VMware软件:首先,确保您已经下载了VMware Workstation软件并安装在电脑上。VMware Workstation是一款功能强大的虚拟化软件,它允许在单一物理机上运行多个操作系统。 Linux镜像文件:需要准备一个Linux操作系统的镜像文件。…

lv逻辑卷(虚拟磁盘)及配额实操

、LVM 1.LVM概念 LVM逻辑卷管理(Logical Volume Manager):LVM 适合于管理大存储设备,并允许用户动态调整磁盘容量大小,提高磁盘管理的灵活性。LVM的快照功能可以帮助我们快速备份数据。 2.LVM对比磁盘分区的优点 1…

代码随想录--数组--二分查找

数组理论基础 数组是存放在连续内存空间上的相同类型数据的集合。 数组可以方便的通过下标索引的方式获取到下标下对应的数据。 举一个字符数组的例子,如图所示: 需要两点注意的是 数组下标都是从0开始的。 数组内存空间的地址是连续的。 正是因为数…

单片机入门还能从51开始吗?

选择从51单片机开始入门还是直接学习基于ARM核或RISC核的单片机,取决于学习目标、项目需求以及个人兴趣。每种单片机都有其特定的优势和应用场景,了解它们的特点可以帮助你做出更合适的选择。 首先,我们说一下51单片机的优势: 成熟…

Java学习之异常处理

目录 程序中的异常 异常的定义 本质 常见的异常 异常的分类 异常的处理 运行时异常 错误时异常 编译时处理异常 throws作用 throw关键字 与throws的区别 finally关键字 语法规则 final finally finalize 的区别 自定义异常类 示例 编写一个分数必须在0~100之间…

三、Mat、Bitmap和Image数据类型之间的转换(OpenCvSharp)

在OpenCV中可以通过ImRead方法读取照片,通过ImShow方法显示照片;但是无法在PictureBox控件中显示 PictureBox控件只能展示Bitmap和Image数据类型图片 为此查阅了网上很多篇博文,将三种数据类型之间的转换进行了归纳整理,感谢网上…