Python爬虫Ajax数据爬取 预先准备

400 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第6天,点击查看活动详情。 工作就没有好干的,我始终是这么认为的.如果什么轻而易举的做成了,怎么能体现你的价值呢,不过真的打交道啊.

什么是Ajax

异步js和XML,它并不是一种编程语言,而是利用JavaScript技术局部刷新,传统的页面修改一点数据,就必须刷新整个页面,有了Ajax,页面不刷新的情况下,更新页面,与服务器进行了交互,获得数据后再调用JS改变网页,这样网页内容就刷新了.

发送请求 -> 解析内容 -> 渲染网页

分析

"检查” 选项,此时便会弹出开发者工具切换到 Network 选项卡,随后重新刷新页面 image.png Ajax有特殊的请求类型,叫做xhr,我尝试下拉微博去找一下这个类型的请求.

image.png 好的找到了,type xhr 意味着这是一个Ajax请求,鼠标点击这个请求,可以查看这个请求的详细信息

image.png 从response中可以看到返回的值,可以与旁边的显示的结果相对照.

过滤请求

可以使用Google浏览器的过滤:

image.png 不断滑动页面,可以看到页面底部有一条条新的微博被刷出,而开发者工具下方也一个个地出现 Ajax 请求,这样我们就可以捕获到所有的 Ajax 请求了。

随意点开一个条目,都可以清楚地看到其 Request URL、Request Headers、Response Headers、Response Body 等内容,此时想要模拟请求和提取就非常简单了。

明天尝试去爬取Ajax的页面爬取,工作真的太烦心的,只要找就有bug.每天都在和前面的自己斗智斗勇.