python-execjs(調用js)


一.安裝

pip3 install PyExecJS

電腦上要有nodejs環境

二.使用

一.獲取js字符串

首先將js保存至於本地文件或者你可以可以直接讀到內存,必須讓js以字符串的形式展示

注意點:字符串中不要出現<script>標簽的js字符串

二.轉換

js_obj = execjs.compile(上面轉換的js字符串)

三.調用js對象中的方法

res = js_obj("方法名",參數一,參數二.........)

三.我使用時候的經驗

一個js_obj,比如說完成某個留下需要方法一(方法二的返回值(方法三的返回值))

你的代碼類似這樣

js_obj = execjs.compile(js_str)

res_3 = js_obj("方法三")
res_2 = js_obj("方法二",res_3)
res_1 =js_obj("方法一",res_2)

#結果你會發現res_1並不是你想要的,而邏輯是毫無問題的

這可能是模塊的bug導致的

解決方法

在js文件中定義一個三者封裝后的函數

function func_1(res_2){......}
function func_2(res_3){......}
function func_3(){......}

//頂一個封裝后方法
function my_func(){func_1(func_2(func_3()))}

然后調用我們自定義的方法即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM