栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

某易云爬虫(JS逆向)下

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

某易云爬虫(JS逆向)下

接着上一篇破解加密,接下来还有最后部分,没有看过上一篇文章的朋友可以先去看一下上一篇文章 本篇仅说明得到加密参数后的步骤 1.准备环境:pycharm,包:execjs, requests, csv 2. 具体步骤:
    先介绍一下execjs这个包,这个包用来运行js代码,并获得运行结果,
    这样我们先在python里面拿到加密参数:
with open('comment.js', 'r') as f:
	jsgo=execjs.compile(f.read())
	data='{"rid":"R_AL_3_37873787","threadId":"R_AL_3_37873787","pageNo":"1","pageSize":"20","cursor":"-1","offset":"0","orderType":"1","csrf_token":""}'
	res=jsgo.call('run',data)
	return res

这里的 run 就是我们在js文件里面编写的run函数,data是我们传入run函数的参数。

    接下来,我们拿到了加密参数就可以直接发起请求了:
s=requests.Session()
s.headers=headers
resp=s.post(url=url,data=key)

这里要注意一个地方就是,记得把headers自己copy过来
然后运行代码观察结果:

不多不少,正好20条,可是,评论不只是20条呀,一定是有某个参数影响了,这时候我们把目光聚集到data:

data='{"rid":"R_AL_3_37873787","threadId":"R_AL_3_37873787","pageNo":"1","pageSize":"20","cursor":"-1","offset":"0","orderType":"1","csrf_token":""}'

很容易看出,这里有个pagesize,和pageno,就是我们的页数和一页多少条,前面的两个 id 就是 对不同的音乐,我们做一下更改(这里也是我为什么单独把data放在放在python而不是放在js里,方便调节更改嘛),然后观察是否有变化:

完美结束

    最后关于网易云的js逆向就结束了,这是我在进入爬虫的第一个实战,整体难度是较容易的,之后网易云反爬和加密更新了我也会对这两篇文章进行更改,有任何错误的地方请指出哦
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/725850.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号