免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

可以操作JavaScript的Python庫有哪些

這篇文章給大家介紹可以操作JavaScript的Python庫有哪些,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

祁門網站制作公司哪家好,找創新互聯!從網頁設計、網站建設、微信開發、APP開發、成都響應式網站建設公司等網站項目制作,到程序開發,運營維護。創新互聯2013年開創至今到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯。

前言

我們都知道Python可以很輕松的實現某些功能,而且還可以編寫網頁,比如Remi,Pysimplegui,但是操作JavaScript這種瀏覽器的腳本語言,還是第一次聽說,小編也是第一次聽說,于是就跟大家腦補這一知識。

一、PyExecJS

是一個可以執行JavaScript腳本的Python模塊,可以與網頁上的JavaScript進行交互,這樣就能更加精準的獲取到網頁中的加密內容,如果用Python中的網絡模塊進行請求,會無法解密文檔中的加密內容,這個時候使用我們的PyExecJS可以很方便到的解密網頁中的加密內容,當然這得你會Js逆向才可以。不過要想PyExecJS解析JS語句沒毛病,還得整個Js語言解析環境,這里推薦NodeJS,尷尬。我們來看下PyExecJs的用法:

1.常規操作

import execjs aa=execjs.eval("'one|two|three'.split('|')") #執行JavaScript代碼,將字符串分割形成數組 print(aa)   e=execjs.compile('''     #編譯一個表達式 function add(x,y){   return x+y; } ''') print(e.call('add',10,20))#調用編譯好的函數并且賦值

可以操作JavaScript的Python庫有哪些

也可以通過獲取引擎來運行我們的語句,如下:

print(execjs.get().eval('1+1'))

2.查看解釋引擎

print(execjs.get().name)

可以操作JavaScript的Python庫有哪些

這里JavaScript的解釋引擎是JScript,我們還可以使用自己指定給力的引擎,比如“Nodejs”。

3.指定引擎

import execjs import os os.environ["EXECJS_RUNTIME"] = "Node" print(execjs.get().name)

可以操作JavaScript的Python庫有哪些

也可以手動指定引擎,如下:

js1=execjs.get(execjs.runtime_names.JScript) print(js1.eval('1'))  js2=execjs.get(execjs.runtime_names.Node) print(js2.eval('2'))

可以操作JavaScript的Python庫有哪些

二、Js2Py

這個我覺得算是比較好的了,可以說是一個綜合體,它不需要依賴別的環境,可以獨立運行Js文件,只不過它的運行速度可能會稍微慢一點而已,但是這都不叫事。下面我們來看看它有哪些神器的功能吧。

1.常規操作,必須的

可以操作JavaScript的Python庫有哪些

2.循環遍歷

import js2py aa=js2py.eval_js( ''' var i=0; for(var c=1;c<6;c++){ console.log(c); }  ''' ) print(aa)

可以操作JavaScript的Python庫有哪些

3.讀取Js文件

我們可以把JS文件寫入文件中,以便我們進行調用,如下:

1.js

function f(aa){     if(aa>11){         console.log('OK')      }else{         console.log('Fail')   } }

Python文件

import  js2py with open('1.js','r') as f:     aa=js2py.eval_js(f.read())     print(aa(11))

可以操作JavaScript的Python庫有哪些

4.爬取網站數據

這里我們以淘寶為主,我想整它的JS腳本文件,如下:

import execjs import requests import re url = 'https://ai.taobao.com/?pid=mm_26632323_6762370_25910879' res=requests.get(url).text js=re.findall(r'<script>(.*?)</script>',res) print(js,'\n') js1=re.sub(r'eval\(','return(',js[0]) html="function getLego2WPK(){" + js1 + "};" ctx = execjs.compile(html) temp = ctx.call('getLego2WPK') print(temp)

可以操作JavaScript的Python庫有哪些

三、PyV8

基于Google的V8引擎打造,遺憾的是目前只支持Python2版本,而且已不再維護,建議Python2的小伙伴可以去試試。

關于可以操作JavaScript的Python庫有哪些就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

網頁標題:可以操作JavaScript的Python庫有哪些
分享網址:http://newbst.com/article14/jhsode.html

成都網站建設公司_創新互聯,為您提供關鍵詞優化、定制網站網站收錄移動網站建設、面包屑導航、企業建站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

微信小程序開發