概述
execjs库 - python中直接调用js代码
今天CSDN看大佬儿爬网易云评论,一顿操作猛如虎。
简单来讲,就是找到返回json格式得评论url之后,发现是post请求,携带了两个参数
data = {
'params': ***,
'encSecKey': ***,
}
很长,明显是加密的,所以需要分析js进行解密。
但是那个大佬儿又不会js(我装作信了),所以做了一个折中的做法儿,通过把产生对儿加密字符串的js复制出来,通过在python中运行它,成功实现获得其中的东西。
直接跑通js代码这个库挺好用啊,这样的话原则意义上所见即所爬啊 /吹牛
然后就介绍了这么一个库
pip install pyexecjs -i https://pypi.douban.com/simple
简单使用
1、定义py调用函数
import execjs
js = open('./1.js', 'r').read()
ext = execjs.compile(js) # 类似编译得效果
result = ext.call('start') # 运行js中得start函数,如果有返回值,直接能接收到
print(result)
2、自然就是创建我们用的1.js
# 这里我就随便举个例子
function start() {
return 1;
}
随后大佬儿开始无脑操作解密网易云评论加密
我做了些许修改的文件地址:其中的music163.js和py ,羞愧的是忘了保留那位的github地址,抱歉了。
最后
以上就是结实彩虹为你收集整理的python 调用js_execjs库 - python中直接调用js代码的全部内容,希望文章能够帮你解决python 调用js_execjs库 - python中直接调用js代码所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复