对于有的网页,我们滑动滚轮或者点击下一页,我们发现网址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类型数据转换为字符串,因此需要对这数据类型进行判断。
下图是华为商城评论页面网址所要提交的数据:
联系客服