日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)Python教程:python如何調(diào)用js代碼?

python調(diào)用js代碼比較好用的方法是使用第三方庫(kù)pyexecjs,這個(gè)庫(kù)可以用python運(yùn)行JavaScript代碼。

實(shí)現(xiàn)方式: 在本地 JS 環(huán)境下運(yùn)行 JS 代碼 PS:支持的 JS 環(huán)境包含:Node.js、PyV8、PhantomJS、Nashorn 等
1.安裝依賴包 PyExecJS

//py_exec_js_demo.py

//安裝依賴
pip3 install PyExecJS

2.從 JS 文件中讀取源碼

def js_from_file(file_name):
    """
    讀取js文件
    :return:
    """
    with open(file_name, 'r', encoding='UTF-8') as file:
        result = file.read()

    return result

3.使用 execjs 類的compile()方法編譯加載上面的 JS 字符串,返回一個(gè)上下文對(duì)象

import execjs

from js_code import *

# 編譯加載js字符串
context1 = execjs.compile(js_from_file('./norm.js'))

4.調(diào)用上下文對(duì)象的call() 方法執(zhí)行 JS 方法其中參數(shù)包含:JS 代碼被調(diào)的方法名、對(duì)應(yīng)方法的傳入?yún)?shù)

# 調(diào)用js代碼中的add()方法,參數(shù)為2和3
# 方法名:add
# 參數(shù):2和3
result1 = context1.call("add", 2, 3)

print(result1)

需要注意:js代碼返回的字符串如果有特殊字符的話可能會(huì)出錯(cuò)。
解決方法:先將字符串進(jìn)行base64編碼后再返回。

function a(str) {
    return new Buffer(str).toString("base64");
}

名稱欄目:創(chuàng)新互聯(lián)Python教程:python如何調(diào)用js代碼?
地址分享:http://www.dlmjj.cn/article/coojcgh.html