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)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 使用Python和百度語音識別生成視頻字幕的實現(xiàn)2. 教你如何寫出可維護(hù)的JS代碼3. ASP中解決“對象關(guān)閉時,不允許操作。”的詭異問題……4. idea設(shè)置自動導(dǎo)入依賴的方法步驟5. python pymysql鏈接數(shù)據(jù)庫查詢結(jié)果轉(zhuǎn)為Dataframe實例6. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)7. docker /var/lib/docker/aufs/mnt 目錄清理方法8. 淺談SpringMVC jsp前臺獲取參數(shù)的方式 EL表達(dá)式9. IDEA版最新MyBatis程序配置教程詳解10. 詳解Java內(nèi)部類——匿名內(nèi)部類
