分享

Python 异步加载XHR数据抓取

 醉人说梦 2020-02-04

对于有的网页,我们滑动滚轮或者点击下一页,我们发现网址url没有发生变化,我们称这些网页为动态网页

因此,我们需要F12开发者工具,选中Network--XHR不断滑动滚轮或者点击下一页,我们就会发现网页中的内容就隐藏在XHR里面。

但要注意网页的请求方式GET还是POST

GET和POST是不一样的, GET的数据在请求链接中是可以直接看见的。我们可以在浏览器中输入内容所在的链接,是有内容返回的,而POST则不能。

下面以今日头条图片网页和美团外卖评论网页作为对比进行分析。

注意:

所有的url都是XHR下的链接,去掉多余的参数。

今日头条图片

在这里插入图片描述

美团外卖评论

在这里插入图片描述

如果是GET请求:

则需要利用from urllib.parse import urlencode构造完整的请求url。
在这里插入图片描述

如果是POST请求:

美团外卖

则不需要构造完整请求url,但需要通过POST传入参数。注意,有时需要将传入的parameters参数转为字符串,借助json.dumps()。因为在Python中,没有json类型的数据,实质上json数据是字符串。
在这里插入图片描述

华为商城

因为提交的数据是字符串,所以我们需要借助json.dumps(),将字典dict类型数据转换为字符串,因此需要对这数据类型进行判断。

下图是华为商城评论页面网址所要提交的数据:
在这里插入图片描述
在这里插入图片描述

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多