动态页面爬取
好久没有写爬虫了,今天敲了一份爬虫出来——爬取百度百科的历史记录,结果在时隔四个月之后再次遇到的对手居然是一个动态页面(一开始把百度想的太简单了),不过在一番努力之后还是达到了我的目标,然后就当复习似的写了篇博客。
一、概念
动态页面其实是相对于静态页面而言的。在面对静态页面的时候直接查看response一般就是 页的全部代码了,但是动态页面不然,一般动态页面的response再打开的时候和你在 页看的不一样了。
二、实践及实践之前
因为本人超喜欢实践,所以二话不说进行上实践,实践出真知,多实践就懂了。
目标 页:万科百度百科历史版本
实现环境:win32
version : python 3.6.2
实践目标:获取万科百度百科历史版本的历史修改时间,做成图表或者csv文件
三、流程阐述
和所有的爬虫一样,我们第一步会进行 页的分析,因为我们目标选取了一个动态 页,所以我们还需要对json文件等进行追踪。
流程:
1、 页分析
2、查询、追踪json等文件或者xhr
3、进行文本匹配
4、画图或者制作csv
四、工具准备
我们所需要的库有(都是最新版):
1.requests
2.re
(以下的库不是爬虫必须的,但是是我这次所需要)
3.matplotlib(进行可视化)
4.datetime(对时间进行操作)
5.Pandas(python强大的数据处理库)
6.os(对系统进行操作)
(本人更偏爱原始的re库,当然这里使用正则表达式已经能够解决所有问题了)
所需了解的知识:
1.python语法基础
2.正则表达式的匹配规则
(以下非爬虫必要)
3.datetime一些基本功能
4.matplotlib可视化的操纵(虽然此项为非爬虫必要,但是很多时候数据可视化出来会让数据更为直观,让人更容易做出判断)
5.pandas库的基本使用(此项为非爬虫必要,但是为数据分析必学)
五、 页分析
首先我们打开我们的目标 页→万科百度百科历史版本。
其实这是一个类似词典的格式了,但是懒得思考的笔者,决定使用简单粗暴的正则表达式。
九、转化时间戳
这个时候我们会发现,再creattime那里给的时间是个什么鬼
但是仔细一思考你会发现这是一个时间戳
python的时间戳:从1970年1月1日上午12:00到现在的秒数
是不是很崩溃
不过还好决解这个问题只需要几段简短的代码
csv

十一、总结和代码
感觉这次爬虫还行,时隔两个多月我还能想起来实属不易,写这次博客纯属复习了,至于上面没有写写出如何作图和如何做csv的原因,我可以说博主忽然不想写了吗/p>
以下是代码:https://github.com/Don98/Spier_project/blob/master/wanke.py
(注:博主懒得写注释了,不懂可以评论询问,谢谢)
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!