今天的主题是爬取动态网页的经验分享,以cocos论坛为例子进行分享。(官方不会打我吧 )

配置环境

为什么选择cocos论坛呢?因为自己在浏览论坛时,发现标题内容会随着滚动条的位置而动态添加。

环境: python3 + requests 。还要引入几个系统库。参考如下:

分析网页

以chrome浏览器为例,空白处 右键->检查 进入网页分析模式,选择 Network 中的XHR,滚动条往下滚,观察右侧加载了什么文件。

在网页分享模式下,点击刚才下载的文件,查看里面的内容,发现对一个地址使用了GET方法,并传入了页码的参数。

再看看返回的内容是一个json字符串。

这个 json字符串里就有我们想要内容。一起看下如何用requests 发送参数,并返回Json 结果。

只需要根据地址,传入一个 headers 告诉网页我们要接收json字符串。

解析json

json是一种数据存储格式,可以被多种语言解析,一般用于数据传输。

由前一张图,可以看到所有文章列表在topic_list的topics中,一起看看 python3 是怎么解析的。

其中的链接地址可以通过打开几个论坛内容找到规律,是由 slug 和 id 这两个字段拼接的。

最后使用多线程 和 csv 存储结果。(不清楚的话可以看看之前的文章哦。python爬虫入门实战(三)不会正则怎么办?xpath分分钟搞定 和 python爬虫入门实战(二)!快!快!快!让爬虫赢在起跑线!多线程)

最后,看看最终效果吧!

小结

对于动态生成的内容,我们可以通过网页分享中下载的文件分析,并通过requests模块模拟headers 和发送参数方法获取数据。

这是我学到的新技能哦!如有错误或其他想法,欢迎留言!如果我又学到新的东西,会第一时间分享给大家哦!点个关注不迷路!


以上内容仅供个人学习使用,请勿用于商业用途。


我是白玉无冰,游戏开发小赤佬,也玩python和shell

怎么加载csv_python爬虫入门实战(四)!爬取动态加载的页面相关推荐

  1. python爬虫动态加载_python爬虫入门实战(四)!爬取动态加载的页面!

    今天的主题是爬取动态网页的经验分享,以cocos论坛为例子进行分享.(官方不会打我吧 ) 配置环境 为什么选择cocos论坛呢?因为自己在浏览论坛时,发现标题内容会随着滚动条的位置而动态添加. 环境: ...

  2. python爬虫入门实战!爬取博客文章标题和链接!

    最近有小伙伴和我留言想学python爬虫,那么就搞起来吧. 准备阶段 爬虫有什么用呢?举个最简单的小例子,你需要<战狼2>的所有豆瓣影评.最先想的做法可能是打开浏览器,进入该网站,找到评论 ...

  3. python3 [爬虫入门实战]scrapy爬取盘多多五百万数据并存mongoDB

    总结:虽然是第二次爬取,但是多多少少还是遇到一些坑,总的结果还是好的,scrapy比多线程多进程强多了啊,中途没有一次被中断过. 此版本是盘多多爬取数据的scrapy版本,涉及数据量较大,到现在已经是 ...

  4. layui 如何动态加载局部页面_python爬虫入门实战(四)!爬取动态加载的页面!

    今天的主题是爬取动态网页的经验分享,以cocos论坛为例子进行分享.(官方不会打我吧 ) 配置环境 为什么选择cocos论坛呢?因为自己在浏览论坛时,发现标题内容会随着滚动条的位置而动态添加. 环境: ...

  5. Python爬虫入门 | 7 分类爬取豆瓣电影,解决动态加载问题

      比如我们今天的案例,豆瓣电影分类页面.根本没有什么翻页,需要点击"加载更多"新的电影信息,前面的黑科技瞬间被秒--   又比如知乎关注的人列表页面:   我复制了其中两个人昵称 ...

  6. python爬虫动态加载页面_Python+Selenium爬取动态加载页面(2)

    注: 上一篇<Python+Selenium爬取动态加载页面(1)>讲了基本地如何获取动态页面的数据,这里再讲一个稍微复杂一点的数据获取全国水雨情网.数据的获取过程跟人手动获取过程类似,所 ...

  7. 用Python爬取动态加载的诸如百度的图片

    用Python爬取动态加载的诸如百度的图片 使用原因 代码如下 模块介绍 selenium模块 lxml解析模块 requests模块 去除重复 开启多线程 效果如下 留言 使用原因 学习Python ...

  8. python爬去百度百科词条_Python爬虫入门学习实践——爬取小说

    本学期开始接触python,python是一种面向对象的.解释型的.通用的.开源的脚本编程语言,我觉得python最大的优点就是简单易用,学习起来比较上手,对代码格式的要求没有那么严格,这种风格使得我 ...

  9. 爬虫案例之爬取国家药监局化妆品生产许可明细(爬取动态加载数据)

    一.实验目的 爬取国家药监局(化妆品生产许可信息管理系统服务平台 (nmpa.gov.cn))化妆品生产明细(具体到每家企业的具体信息),当我们进入该网站首页时,发现其结构为每页15条的json类型数 ...

最新文章

  1. TextInputLayout
  2. Elide 4.3.1 发布,雅虎开源的应用数据 API 搭建平台
  3. 医院管理制度【第一辑】2010年11月12日
  4. jzoj3084-超级变变变【数学】
  5. methods中axios里的数据无法渲染到页面
  6. laravel auth::check 后session失败_01.laravel简介
  7. BZOJ_1629_[Usaco2007_Demo]_Cow_Acrobats_(贪心)
  8. java集群调度_集群环境下定时调度的解决方案之Quartz集群
  9. for循环中++i 和 i++ 的区别
  10. vue2.0 实现导航守卫(路由守卫)
  11. 利用VBB仿真——实现《天空之城》播放
  12. Redis 未授权访问 CNNVD-201511-230 漏洞复现
  13. 2020腾讯广告大赛 :13.5 baseline
  14. IE8 SysFader:IEXPLORE.EXE应用程序错误解决办法
  15. 千千静听播放器下载2015 v9.1.6 官网最新版
  16. Python+Vue计算机毕业设计教师教学质量评价管理2lbw7(程序+LW+源码+部署)
  17. 最便捷的港股/A股/美股实时行情API【免费-免费-免费滴,已应用到策略中】
  18. Java 不允许在一个范围大的作用域下重新定义同名变量
  19. 怎么学习CAD?初学CAD如何入门
  20. 通信协议整理之 SPI 通信

热门文章

  1. SSD( Single Shot MultiBox Detector)关键源码解析
  2. 敏捷研发项目,我们该如何度量?
  3. MySQL深潜|剖析Performance Schema内存管理
  4. 排查指南 | 关于 mPaaS-iOS 小程序打不开问题的解决方案
  5. 如何通过Dataphin构建数据中台新增100万用户?
  6. 探秘盒马机器人餐厅:老外目瞪口呆,90岁奶奶狂点赞
  7. 云原生与AI时代的存储该是什么样?新华三发布全NVMe智能闪存与智慧中枢数据平台
  8. 亚马逊云科技首次发布“三驾马车”中国业务战略
  9. Spring 从入门到入土——AOP 就这么简单!| 原力计划
  10. 云现场 | 别等到WiFi断了 才明白云管理网络的重要性