针对现在大部分的网站都是使用js加密,js加载的,并不能直接抓取出来,这时候就不得不适用一些三方类库来执行js语句
execjs,一个比较好用且容易上手的类库(支持py2,与py3),支持 JS runtime。
很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:1097524789
官网: https://pypi.org/project/PyExecJS/
# pip install pyexecjs
# 一node.js为引擎 # 检测运行环境 import execjs print(execjs.get().name)
最简单的代码案例 使用eval执行js代码
import execjs
e = execjs.eval('a=new Array(1,2,3)') print(e)
如何处理内容比较多的js呢
str1 = """
function test(data){
return data;
}
"""
# 先吧字符串编译成js代码 cx_js = execjs.compile(str1) # 调用call方法去执行js代码 a = cx_js.call("test", "122") # 第一个为函数名,后面的为参数,多的就用逗号隔开 print(a) """如果是比较大的js内容呢 我们可以先保存到文件中,然后读取编译,在执行"""
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们