Python 异步加载XHR数据抓取——GET与POST请求方式对比

对于有的网页,我们滑动滚轮或者点击下一页,我们发现网址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类型数据转换为字符串,因此需要对这数据类型进行判断。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值