新闻详情

新闻详情

首页 / 资讯中心 / 详情

利用python传统网络爬虫包爬取Ajax网站数据

发布时间:2026/9/26 11:01:00来源:尧图网络
利用python传统网络爬虫包爬取Ajax网站数据
此文章仅供合法用途请勿违反法律据一些网络调查显示大约40%的爬虫任务属于Ajax网站。所谓Ajax网站就是内容动态生成的网站Ajax网站的最大特征就是翻页时url没有变化因此如果用selenium的get方法是无法获得网站的信息的因为使用selenium时网站的源码在翻页或刷新后仍然是前一页的源码我们想要的新信息在新的一页所以webdriver.find_elements()方法是无法获得新信息的。爬取Ajax网站的网站最重要的步骤就是获取真正的从服务器获取信息的url而不是网址的url。以东方财富网为例如何获取真正的url请参考CSDN文章《爬虫案例5——爬取东方财富网的港股数据》。获取到真正的url之后就可以用request包来爬取数据了。以下是我爬取东方财富网cpi数据的代码供大家参考。我的系统是mac大家注意要把代码转换成自己的系统。import requests import re import openpyxl url(https://datacenter-web.eastmoney.com/api/data/v1/get?callbackdatatable3948764columnsREPORT_DATE%2CTIME%2CNATIONAL_SAME%2CNATIONAL_BASE%2CNATIONAL_SEQUENTIAL%2CNATIONAL_ACCUMULATE%2CCITY_SAME%2CCITY_BASE%2CCITY_SEQUENTIAL%2CCITY_ACCUMULATE%2CRURAL_SAME%2CRURAL_BASE%2CRURAL_SEQUENTIAL%2CRURAL_ACCUMULATEpageNumber1pageSize20sortColumnsREPORT_DATEsortTypes-1sourceWEBclientWEBreportNameRPT_ECONOMY_CPI_1739344903750) #要用真正的url而不是网址详情见CSDN文章《爬虫案例5——爬取东方财富网的港股数据》 htmlfile requests.post(url) print(htmlfile.text) timepattern (\\d)(\\d)(\\d)(\\d)[\u4E00-\u9FA5](\\d{2})[\u4E00-\u9FA5]{2,4} cpipattern [A-Za-z0-9_][A-Za-z0-9_][A-Za-z0-9_][A-Za-z0-9_][A-Za-z0-9_][A-Za-z0-9_][A-Za-z0-9_][A-Za-z0-9_]\\BASE\\\\:(\\d)(\\d)(\\d)?(.)?(\\d)? fn /Users/lpl/Desktop/gold.xlsx wb openpyxl.load_workbook(/Users/l/Desktop/gold.xlsx) ws wb.active dates re.findall(timepattern,htmlfile.text) cpis re.findall(cpipattern,htmlfile.text) print(dates) print(cpis) dateEmpty [] cpiEmpty [] for date in dates: strDate .join(date) dateEmpty.append(strDate) for cpi in cpis: strcpi .join(cpi) cpiEmpty.append(strcpi) ws.append(dateEmpty) ws.append(cpiEmpty) wb.save(/Users/l/Desktop/gold.xlsx)
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Go 框架之旅:Gin / Kratos / Go-Zero / Beego 全面对比 2026/9/26 11:00:57

Go 框架之旅:Gin / Kratos / Go-Zero / Beego 全面对比

Go 框架之旅:Gin / Kratos / Go-Zero / Beego 全面对比Go 业务框架如雨后春笋。Gin、Kratos、Go-Zero、Beego 是公认主流。本文横向对比,看清选型。一、Gin r : gin.Default() r.GET("/hello", handler)特点: middleware 生态完整r…

阅读更多 →
Worker Pool模式:高并发任务分发与资源控制 2026/9/26 11:00:57

Worker Pool模式:高并发任务分发与资源控制

Worker Pool模式:高并发任务分发与资源控制Worker Pool是Go高并发编程中最常用的模式之一。它通过预分配固定数量的goroutine处理任务队列,实现资源控制和吞吐量平衡。本文从基础Worker Pool到生产级实现,讲透Pool的设计原理、容量控制和优雅…

阅读更多 →
部署OpenClaw时设置环境变量提示export: not valid in this context的完整解决方案:TaoToken统一Key配置与shell兼容性验证 2026/9/26 11:00:57

部署OpenClaw时设置环境变量提示export: not valid in this context的完整解决方案:TaoToken统一Key配置与shell兼容性验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Fastgpt+oneapi均使用docker部署报错Connection error:TaoToken统一Key通道下的排查与配置骨架 2026/9/26 11:00:57

Fastgpt+oneapi均使用docker部署报错Connection error:TaoToken统一Key通道下的排查与配置骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
OCS网课助手第三方题库API配置指南:从对接原理到实战调试 2026/9/26 11:00:57

OCS网课助手第三方题库API配置指南:从对接原理到实战调试

1. 从零理解OCS网课助手与第三方题库API的对接逻辑1.1 为什么需要给OCS配置第三方题库APIOCS网课助手本质上是一个自动化学习辅助工具,它的核心能力是模拟用户在网课平台上的学习行为,自动完成视频播放、章节切换、答题提交等操作。但很多人第一次用的时…

阅读更多 →
Go 泛型高级实战:类型约束 + 函数式模式全解 2026/9/26 11:00:50

Go 泛型高级实战:类型约束 + 函数式模式全解

Go 泛型高级实战:类型约束 函数式模式全解Go 1.18 泛型已经稳定,但实际项目使用常常停留在简单场景。本文讲清泛型的高级约束、函数式编程模式与技巧。一、基本泛型回顾 func Print[T any](x T) {fmt.Println(x) }func Pair[T, U any](x T, y U) { ... …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉