python动态爬虫ajax翻页_如何爬动态加载的页面?ajax爬虫你有必要掌握

本文介绍了如何抓取和解析使用Ajax异步加载的网页数据,以Python为例,通过实例详细讲解了如何处理蘑菇街和亚马逊网站的Ajax请求,包括使用Chrome开发者工具抓取数据、理解Json格式、模拟Ajax请求以及使用BeautifulSoup解析HTML内容。通过学习,读者能够掌握抓取动态加载页面数据的技巧。
摘要由CSDN通过智能技术生成

d6bb87cfb7469f4c24fb8928de27a7a4.png

通过前面几期Python爬虫的文章,不少童鞋已经可以随心所欲的爬取自己想要的数据,就算是一些页面很难分析,也可以用之前介绍的终极技能之「Selenium」+「Webdriver」解决相关问题,但无奈这种办法效率太慢,咋整?

今天就为大家介绍Ajax异步加载的数据的爬取。

↓↓↓

何为Ajax异步加载的数据呢?Ajax,全称为Asynchronous JavaScript and XML,即异步的JavaScript和XML。它不是一门编程语言,而是利用JavaScript在保证页面不被刷新、页面链接不改变的情况下与服务器交换数据并更新部分网页的技术。对于传统的网页,如果想更新其内容,那么必须要刷新整个页面,但有了Ajax,便可以在页面不被全部刷新的情况下更新其内容。在这个过程中,页面实际上是在后台与服务器进行了数据交互,获取到数据之后,再利用JavaScript改变网页,这样网页内容就会更新了。

2e6b4afa45959fd11ee03f0a3e93370e.png

通俗来讲:就像一栋房子,先把框框架架搭起来(前端页面框架),再给他装修、置办家具(填充数据),这里的装修、置办家具即是ajax请求的数据。。

我们可以通过一些网站的事例来直观的了解一下什么到底是什么是ajax。

例如访问“蘑菇街”电商平台中的食品类目:http://list.mogujie.com/book/food/52026,通过Chrome浏览器可以看到我们与“蘑菇街”交互的所有数据。

示范:1打开Chrome,访问

http://list.mogujie.com/book/food/520262在Chrome中按F12或者在页面空白处点击鼠标右键→检查。3点击Clear 和 XHR 按钮。

fbc6798b69836216b0efcccbc96f2500.png4刷新一下页面。

cf57d424781059507018346f56560177.png5点击一下左边的search?callback=JQuery….,再点击右边栏的Response其下方会出现一些看不懂,但又好像有点儿规则的数据。管他的,先Ctrl+A全选拷贝出来看看。(如果你把商品列表页继续下滑,会出现更多的这种数据哦。)6使用Chrome插件「JSON-hanle」或者访问:https://www.json.cn/将刚才拷贝的数据粘贴进去,点击OK。

614e01f8e9d686049bb4e9ee0da8c6a8.png7再与网页上的数据对比一下,见图:

224f004164bf58550c88cdbb672e5263.png

怎么样?是不是一目了然,相关数据都在里面了。这里的orgPrice为原价、sale为销量、cfav为点赞、price为现价。这些数据都已经在这一串乱七八糟的

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值