抓取基金网站N页JS生成的内容(多页)

requests爬虫实战:某基金信息爬取 requests爬虫实战练习 阅读详情

回顾

http://blog.youkuaiyun.com/github_26672553/article/details/78589068
前面我们已经完成了 利用phantomjs和selenium2个包 抓取到了基金网站第二页的html内容。

我们后面认为只要循环就可以抓第三页、第四页、。。。。,但其实这有个坑。
这里写图片描述
看见没有,其实我们只能循环到第五页。
这个就尴尬了!!!!

抓取任意页

这里写图片描述

仔细看上图,在获取到总页面的情况下,我们利用去第xx页就可以实现循环抓取了。

# 去第几页 输入框
tonum = driver.find_element_by_id("tonum")
# 去第几页 提交按钮
jumpBtn = driver.find_element_by_id("btn_jump")

tonum.clear() # 情况输入框
tonum.send_keys(6) # 去第6页
jumpBtn.click() # 点击按钮

WebDriverWait(driver,20).until(lambda driver:driver.find_element_by_id("pager")\
        .find_element_by_xpath("span[@value=6 and @class!='end page']")\
        .get_attribute("class").find("at") != -1)

print(driver.page_source) # 打印网页源代码

最后打印网页源代码确实是第6页的内容,说明代码没有问题。

稍作说明:WebDriverWait().until()里我们前面不一样(之前传递了一个函数名),现在这种是lambda语法,我们线简单理解成python中的”回调函数”。
until()方法就是判断 是否是第6页。

2、我们定义一个函数:获取第start页到第end页,并且保存抓取到的html内容。

def getData(start, end):
    for x in range(start, end+1):
        # 去第几页 输入框
        tonum = driver.find_element_by_id("tonum")
        # 去第几页 提交按钮
        jumpBtn = driver.find_element_by_id("btn_jump")

        tonum.clear()  # 第x页 输入框
        tonum.send_keys(str(x))  # 去第x页
        jumpBtn.click()  # 点击按钮

        WebDriverWait(driver, 20).until(lambda driver: driver.find_element_by_id("pager") \
                                        .find_element_by_xpath("span[@value={0} and @class!='end page']".format(x)) \
                                        .get_attribute("class").find("at") != -1)

        # 保存抓取到的html内容
        # 保存到html目录下
        with open("./htmls/{0}.txt".format(x),"wb") as f:
            f.write(driver.find_element_by_id("tableDiv").get_attribute("innerHTML").encode("utf8"))
            f.close()

上面代码最后我们没有保存所有html内容,只是保存了基金网站表格部分(tableDiv)

3、调用函数,测试抓取5~7页的内容:

# 调用函数 抓取5~7页的内容
getData(5,7)

这里写图片描述

Python 网络爬虫利器:执行 JavaScript 实现数据抓取 在 Python 中执行 JavaScript 代码可以帮助完成多种任务,包括 Web 自动化、数据抓取、前端开发和 Web 应用集成。本文介绍了多种方法,包括使用内置库execjs和PyExecJS、Selenium 与 WebDriver,以及调用 Node.js 进程。根据具体的需求和使用情况,选择适合的方法,可以更高效地执行 JavaScript 代码,从而实现更多功能。 阅读详情

相关推荐

基金管理系统

基金管理系统,基于C#语言,其中包含了许多方面,是一款不可多得的好软件

案列:抓取基金网站JS形式的数据

自动探测网页编码:chardethttp://blog.youkuaiyun.com/github_26672553/article/details/78529734 可曾记得,在前面我们抓取基金网站网页的时候,最后要把抓取过来的内容进行gb2312解码才能够看懂。 这是因为该网页就是gb2312编码的,当然那时候我们是肉眼查看才得知的。现在我们利用chardet包来自动帮我探测网页是什么编码。 http

2552

基于nodejs 的多页面爬虫实例代码

前言 前端时间再回顾了一下node.js,于是顺势做了一个爬虫来加深自己对node的理解。 主要用的到是request,cheerio,async三个模块 request 用于请求地址和快速下载图片流。 https://github.com/request/request cheerio 为服务器特别定制的,快速、灵活、实施的jQuery核心实现. 便于解析html代码。 https://www.npmjs.com/package/cheerio async 异步调用,防止堵塞。 http://caolan.github.io/async/ 核心思路 用reque

国内五大主流网站内容抓取工具/采集软件大盘点

大数据技术用了多年时间进行演化,才从一种看起来很炫酷的新技术变成了企业在生产经营中实际部署的服务。其中,数据采集产品迎来了广阔的市场前景,无论国内外,市面上都出现了许多技术不一、良莠不齐的采集软件。 今天,我们将对比国内五大主流采集软件优缺点,帮助你选择最适合的爬虫,体验数据hunting带来的快感。 国内篇 1.火车头 作为采集界的老前辈,我们火车头是一款互联网数据抓取、处理、分析,...

Enweitech Software Works 3万+

零代码搭建专业知识库:Wiki.js+cpolar让团队协作像写笔记一样简单

"项目文档又找不到了!“团队负责人小张第N次在群里看到这样的抱怨——技术文档分散在邮件、网盘和个人电脑里,新人入职要花一周熟悉文档位置,远程协作时版本混乱更是家常便饭。Wiki.js与cpolar内网穿透服务的出现,就像给团队协作装上了"中央大脑”,用写Markdown笔记的简单方式,搭建一个专业的知识库系统。普通人对知识管理的需求其实很简单:方便记录、容易查找、大家能用。但传统方案把这个过程搞得异常复杂:建服务器、配环境、学语法、搞权限……大部分团队还没开始就放弃了。

Yawesh的博客 2035

动态刷新曲线_【GhPython应用】利用反射刷新Image sampler组件

【版权声明】| 作者:月之眼|案例图片来源:Sergiu Radu Pop的facebook| 如有侵权,请联系大水牛平台|如果觉得文章不错,欢迎分享效果展示利用python刷新Image sampler组件,主要的思路就是X输入端:输入要切换的图片路径,我的案例中输入了9张图片。然后通过100毫秒切换一张图片显示,来达到动态显示效果。代码分析run输入端类型:bool (I...

weixin_42393829的博客 531

告别手动:N8N + Crawl4ai + MCP 自动化网页数据抓取与 RAG 知识库构建实战(本地部署教程)

通过本文的介绍,相信你已经了解了如何使用 N8N 和 crawl4ai 搭建一个自动化抓取网站数据的工作流,并利用抓取到的数据构建知识库,最终实现 RAG 方案。这个工作流可以帮助你自动化地获取网络上的信息,为你的 AI 应用提供强大的数据支持。

jennycisp的博客 2416

Calpuff模型实战:从气象数据预处理到污染物扩散模拟全流程指南

本文提供了一份详尽的Calpuff模型实战指南,涵盖从气象数据预处理、地形处理到污染物扩散模拟与结果可视化的全流程。重点解析了Calmet气象场构建、Calpuff核心参数配置,并与AERMOD模型进行对比,帮助环境工程师与科研人员掌握这一强大的三维非稳态拉格朗日扩散模型,以应对复杂地形、海岸熏烟等实际模拟挑战。

s4t5u6v7的博客 458

3个核心功能解锁n8n浏览器自动化:网页抓取、截图生成与脚本执行实战指南

n8n-nodes-puppeteer是一款基于n8n平台的强大浏览器自动化工具,通过集成Puppeteer库为用户提供了直观的网页控制能力,能够将复杂的手动浏览器操作转化为自动化工作流。无论您是数据采集专家、网站测试工程师还是业务流程自动化开发者,这款工具都能帮助您减少80%的重复性工作,让团队专注于更具创造性的任务。 ## 📊 功能解析:三合一浏览器自动化解决方案 n8n-nodes-p

gitblog_00868的博客 254

HTTPS接口测试翻车实录:为什么浏览器能访问而curl报证书错误?

本文深入分析了HTTPS接口测试中浏览器访问正常而curl报证书错误的典型问题。通过对比浏览器、Postman和curl的工具行为差异,结合Nginx日志与Wireshark抓包,揭示了问题根源在于网络架构中HTTPS请求被意外“降级”为HTTP传输,导致SSL握手失败。文章重点探讨了curl工具严格验证机制暴露的`Peer's Certificate issuer is not recognized`错误,并提供了网络配置修正方案与标准化测试流程。

u9v0w的博客 276

Qt实现仿微信在线聊天工具(服务器、客户端)V1_ 01

在主控类中绑定登录类的信号 void signalLoginOK() ,跳过验证步骤,先实现页面的跳转MyChatToolClient.h文件//登录成功槽函数 private :MyChatToolClient.cpp文件} //登录成功槽函数 void MyChatToolClient :: slotLoginOk() {//关闭登录窗口并释放空间 m_loginWin -> close();//新建并打开聊天窗口 m_chatWin = new ChatWindow;

Leo的博客 1869

3分钟掌握n8n浏览器自动化:无需代码的网页抓取终极方案

你是否曾为重复的网页操作而烦恼?或者需要定期从网站上抓取数据却不想编写复杂的爬虫代码?n8n-nodes-puppeteer正是为你量身打造的解决方案!这个强大的n8n节点让**浏览器自动化**变得像搭积木一样简单,即使没有任何编程经验,也能快速构建专业的网页自动化工作流。 ## 传统方案 vs n8n-puppeteer:哪个更适合你? 在深入了解n8n-puppeteer之前,让我们先看看

gitblog_01140的博客 200

基于高德地图的单车路径规划与绘制实战(Vue3 + TypeScript)【拓展:货车路径规划函数、限行检测、城市 Adcode】

✅ 支持单辆车路径规划✅ 自动绘制路线✅ 起点、终点、途经点标注✅ 自动缩放视野至全路径✅ 获取路线距离、时长、过路费✅ 提供清除功能✅ 路线信息保存至本文完整实现了一个基于高德地图 JS SDK + Vue3 + TypeScript的👉单车路径规划与绘制模块。核心亮点:清晰的结构;灵活的扩展性;实时路线信息记录(🚀 你可以很方便地将本模块集成到车联网、调度监控、地图展示类项目中。❤️ 如果这篇文章对你有帮助,别忘了:评论区交流 💬。

专注于前端开发与实战技巧,记录从零到一的学习与项目经验。分享 Vue3 / JavaScript / TypeScript / Flutter /Uniapp等前端技术,以及 性能优化、工程化、最佳实践。 1264

使用pyexecjs和nodejs抓取数据

给大家一个网址,大家可以试试去抓取这个网站的数据http://datamining.comratings.com/exam 打开后界面是这样的: 其实刚开始我也是有点懵逼的,因为这个相当于一个测试的网站,最简单逆向,看你会不会。 当你刷新之后就会出现你要的东西 然后就会打开新的窗口 获取里面的IP地址。 刚开始也是过模拟浏览器之类的东西,但都不管用。 通过分析你...

replat-xin 3477

倒立摆的PLC控制(模型分析+ SCL源代码)

首先简单介绍下倒立摆模型,下面这幅图是MATLAB网站上的倒立摆模型,下面我们利用牛顿第二运动定律建立摆杆的运动方程。

RXXW_Dor的博客 3327

把 SAP ABAP ALE 与 IDoc 玩明白:从架构、配置到排错的一套闭环方法

本文介绍了SAP集成中ALE与IDoc的核心概念与实战应用。ALE作为SAP分布式应用框架,通过异步消息机制实现系统间数据交换,其三层架构隔离业务与传输细节。IDoc作为标准化消息容器,包含控制、数据和状态记录。文章详细解析了配置要点(端口、伙伴参数)、处理流程(Process Code)、排错工具(BD87、WE09)及同系统测试方法,并提供了发送程序代码骨架。通过架构认知→配置→开发→运维的完整路径,帮助读者掌握ALE/IDoc的实际操作技能。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 218

利用 n8n 实现 RSS 数据自动化抓取与存储全流程指南

本文提供了一份利用n8n实现RSS数据自动化抓取与存储的完整指南。通过部署n8n工作台,构建包含定时触发、HTTP请求获取、数据解析及存储到数据库或云端表格的自动化工作流,帮助用户高效构建个人或团队的信息收集系统,并涵盖去重、错误处理等进阶技巧。

desk3的博客 1132

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Website-downloader:基于Node.js的完整网站抓取工具原理与实践

网站抓取技术是网络数据采集和内容归档的核心方法,其基本原理是通过HTTP协议递归下载网页资源并保持原始链接结构。在技术价值层面,完整的网站抓取能够确保HTML、CSS、JavaScript和媒体资源的完整性,解决传统工具在离线可用性和路径重写方面的痛点。这一技术在前端学习、内容备份和离线开发等应用场景中尤为重要。本文聚焦的Website-downloader工具,作为GitHub上获得4.6k星标的热门项目,通过整合wget的递归下载能力和archiver的压缩功能,实现了真正意义上的完整网站镜像。该Nod

weixin_33695450的博客 456

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Linux抓取网站, 趴取网站HTML页面

linux抓取网站, 趴取网站HTML页面

weixin_43523640的博客 717

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

3步实现网站整站抓取:Website-downloader 终极指南

在数字化时代,网站下载工具成为开发者和内容创作者的重要助手。Website-downloader 是一款基于 Node.js 的网站整站抓取工具,能够一键下载任何网站的完整源代码及所有资源文件,包括 JavaScript、CSS 样式表和图片等静态资源,并通过压缩包形式快速获取。无论是保存教程资料、备份个人博客,还是进行网站竞品分析,这款工具都能帮你高效完成离线网站资源获取任务。 ## 技术架构

gitblog_00876的博客 225

ScrapeGraphAI:基于LLM的智能爬虫,多页面爬取、语音生成,开启数据提取新纪元!

可以从新闻网站抓取文章,并使用LLM进行文本摘要,快速生成新闻综述或行业报告。这种功能可以帮助用户及时了解最新资讯,节省阅读时间。五、快速使用。

2401_84494441的博客 1943

利用 n8n 实现 RSS 数据自动化抓取与存储全攻略

本文详细介绍了如何利用开源自动化工具n8n,构建一个高效、可靠的RSS数据自动化抓取与存储系统。通过可视化工作流设计,无需编写代码即可实现定时抓取、数据解析、去重过滤,并支持将结果存储至Google Sheets、数据库或Notion等多种目的地,帮助用户从繁琐的信息收集中解放出来,实现个人或业务数据的自动化管理。

xk7n92h3p5m的博客 626

用JavaScript获取网页中的js、css、Flash等文件

目录 一、前言 二、从E书或网页中获取文件的一般步骤 三、从E书或网页中获取链接进来的css文件 四、从E书或网页中获取链接进来的js文件 五、从E书或网页中获取Flash文件 六、从E书或网页中获取背景音乐文件 七、从E书中获取图像文件 八、进入frame页面 九、其它问题 一、前言 最近我又听到有人抱怨用miniKillEBook反编译电子书,只能得到HTML...

hebenben的博客 856

终极n8n浏览器自动化指南:用Puppeteer节点轻松实现网页抓取和截图

你想在n8n工作流中实现浏览器自动化吗?n8n-nodes-puppeteer就是你的完美解决方案!这个强大的n8n社区节点让开发者能够轻松集成Puppeteer功能,实现网页内容抓取、截图生成、PDF导出和自定义脚本执行等高级浏览器自动化任务。无论你是需要定期监控网站内容、生成网页快照报告,还是构建复杂的数据提取工作流,这个节点都能帮你简化流程,提升效率。 ## 🎯 为什么选择Puppete

gitblog_00885的博客 294
上一篇: 利用phantomjs+selenium抓取fund.eastmoney.com/fund.html网站第二页js生成的页面
下一篇: python多进程入门、分布式进程数据共享
学习笔记666
博客等级 码龄12年 1047粉丝 1369原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值