常规爬虫使用python编写,有些逻辑可以直接复用js的逻辑,所以使用python执行js可以直接省去很多将js移植成python的功夫。
安装node
首先安装node,不会百度
方案一:python安装pyexecjs
使用pip install pyexecjs
安装pyexecjs模块,这个模块目前已经停止维护了,详细原因看https://gist.github.com/doloopwhile/8c6ec7dd4703e8a44e559411cb2ea221。
先新建一个add.js的文件:
function add(p1, p2) {
return p1+p2;
}
接着新建一个main.py:
import execjs
with open('add.js', 'r') as f:
js_file = f.read() # 打开并读取js文件
f.close()
js = execjs.compile(js_file) # 编译js文件
res = js.call("add", 1, 2) # 调用的js函数名为add,参数分别为1和2
print("js的调用结果为:", res)
观察结果:
js的调用结果为: 3
方案二:PythonMonkey
https://github.com/Distributive-Network/PythonMonkey
方案三:js2py
https://github.com/PiotrDabkowski/Js2Py
方案四:直接调用node
直接使用命令行调用node
方案五:将node封装为服务
将node封装为服务,通过请求执行处理并响应。
根据实际情况具体选择方案,这里只做陈列。
此处评论已关闭