(一)通过post方法爬取url不变的翻页数据
1.首先进行抓包选择fetch xhr,避免ctrl+r抓取所有的包在此基础之后,进行翻页,找到对应的页面包信息
2.post方法的后续操作
header={
‘cookie’: ‘xxxxxxxxx’
‘referer’: ‘https://www.icourse163.org/course/PKU-1460924165?from=searchPage&outVendor=zw_mooc_pcssjg_’
}
2.1下面是关于post方法中三个参数的获取来源


list1=[]
//这里的for循环管到该段代码的最后
for i in np.arange(1,33,1):
form_data = {
'courseId':1460924165,
'pageIndex':i,
'pageSize':20,
'orderBy':3
}
//这里的url是翻页信息中的某一页,每页的url应该是一样的
url = 'https://www.icourse163.org/web/j/mocCourseV2RpcBean.getCourseEvaluatePaginationByCourseIdOrTermId.rpc?csrfKey=663649ee8777498c9e505f3f4b2d3bf1'
content = requests.post(url,form_data,headers=header)
content.encoding = 'utf-8'
js =dict(content.json())//这里其实content.json()已经是dict类型,dict只是进行一个说明
list1.append(js)
# 循环页面信息
for i in np.arange(1,13,1):
# 对单个页面的评论进行提取
# list中的元素个数
# 此时j是每页的数据是dict类型,j.get('result').get('list')是list类型是每页的评论
for j in list1:
title = '北师大数据库系统'
list2 = j.get('result').get('list')
for k in list2:
userName = k.get('userNickName')
agreeCount = k.get('agreeCount')
content = k.get('content')
listi = [userName, agreeCount, content,title]
dat.append(listi)
print(dat[6])