Python使用pyexecjs代碼案例解析
針對現(xiàn)在大部分的網(wǎng)站都是使用js加密,js加載的,并不能直接抓取出來,這時候就不得不適用一些三方類庫來執(zhí)行js語句
execjs,一個比較好用且容易上手的類庫(支持py2,與py3),支持 JS runtime。
官網(wǎng):https://pypi.org/project/PyExecJS/
# pip install pyexecjs# 一node.js為引擎# 檢測運行環(huán)境import execjsprint(execjs.get().name)
最簡單的代碼案例 使用eval執(zhí)行js代碼
import execjse = execjs.eval(’a=new Array(1,2,3)’)print(e)
如何處理內(nèi)容比較多的js呢
str1 = ''' function test(data){ return data; }'''# 先吧字符串編譯成js代碼cx_js = execjs.compile(str1)# 調(diào)用call方法去執(zhí)行js代碼a = cx_js.call('test', '122') # 第一個為函數(shù)名,后面的為參數(shù),多的就用逗號隔開print(a)'''如果是比較大的js內(nèi)容呢 我們可以先保存到文件中,然后讀取編譯,在執(zhí)行'''
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
