半年前,知名 Python 發(fā)行版 Anaconda 開發(fā)商推出了PyScript—— 一款支持在瀏覽器中創(chuàng)建 Python 應(yīng)用程序的框架。PyScript 基于Pyodide構(gòu)建,Pyodide 由編譯成 WebAssembly 的 CPython 3.8 解釋器組成,允許在網(wǎng)頁瀏覽器中運(yùn)行 Python。Pyodide 可以安裝來自 PyPi 的任何 Python 包。Pyodide 還包括一個(gè)外部函數(shù)接口,可以將 Python 包暴露給 JavaScript,并將瀏覽器 UI,包括 DOM,暴露給 Python。
Anaconda 表示,為了讓 PyScript 取得成功,他們必須對項(xiàng)目本身及其核心技術(shù)依賴進(jìn)行戰(zhàn)略性投資,例如 WebAssembly (Wasm) 和 Pyodide 開源項(xiàng)目(PyScript 的首選 runtime)。 基于上述目標(biāo),Anaconda 在過去的半年里一直在積極改進(jìn) PyScript 的技術(shù)基礎(chǔ)設(shè)施,并在近日宣布加入了字節(jié)碼聯(lián)盟 (Bytecode Alliance),成為正式投票成員,希望幫助改進(jìn) Wasm 和 WASI 的標(biāo)準(zhǔn)。
Bytecode Alliance(字節(jié)碼聯(lián)盟)由 Mozilla、Fastly、Intel 與 Red Hat 聯(lián)合成立,是一個(gè)推動(dòng) WebAssembly 標(biāo)準(zhǔn)化的組織,該聯(lián)盟旨在通過協(xié)作實(shí)施標(biāo)準(zhǔn)和提出新標(biāo)準(zhǔn),以完善 WebAssembly 在瀏覽器之外的生態(tài)。目前正在積極推動(dòng) WASI (WebAssembly System Interface),使 WebAssembly 能夠安全地訪問文件、網(wǎng)絡(luò)和內(nèi)存等系統(tǒng)資源。
在 Anaconda 看來,Wasm 對于 PyScript 起著至關(guān)重要的作用。類似的,WASI 在 Python 生態(tài)的 runtime 和模塊中也扮演著至關(guān)重要的角色。他們希望與聯(lián)盟合作共同推進(jìn)這些標(biāo)準(zhǔn)。數(shù)據(jù)科學(xué)需要在任何地方都能運(yùn)行 workload,比如本地 Python 環(huán)境、瀏覽器和云中 —— 這種可移植性是計(jì)算的未來。除了加入字節(jié)碼聯(lián)盟,Anaconda 也在大力支持 PyScript 依賴的核心開源項(xiàng)目 Pyodide,比如為其上游貢獻(xiàn)代碼,以及支持正在進(jìn)行的開發(fā)工作。他們認(rèn)為Pyodide 的成功就是 PyScript 的成功,雖然有許多項(xiàng)目都實(shí)現(xiàn)了將 Python 引入瀏覽器,但 Pyodide 在彌補(bǔ)跨語言代理、打包和模塊支持方面的開發(fā)差距方面做得非常出色。而且Pyodide 在可預(yù)見的未來將會(huì)是 PyScript 的默認(rèn) runtime。
Anaconda 希望把它作為一個(gè)重要的依賴關(guān)系來支持,并充分認(rèn)識(shí)到它為 PyScript 帶來的價(jià)值。雖然 Anaconda “押注” Pyodide,但同時(shí)也在積極嘗試新的 runtime。最近他們展示了基于 MicroPython 的 PyScript 技術(shù)預(yù)覽版。
Anaconda 表示,MicroPython 非常適合在缺少操作系統(tǒng)和資源有限的受限環(huán)境中運(yùn)行。當(dāng)他們在默認(rèn)配置中將 MicroPython 應(yīng)用到 Wasm 時(shí),出現(xiàn)了令人興奮的結(jié)果:這個(gè)新的 runtime 總大小僅為 303KB,可即時(shí)加載并在不到 100 毫秒的時(shí)間內(nèi)開始執(zhí)行 MicroPython 邏輯。
Anaconda 認(rèn)為 MicroPython 也對 PyScript 發(fā)揮了重要作用,尤其是在許多加載性能存在問題的開發(fā)場景中。因?yàn)?PyScript 可通過配置來支持多種 runtime,所以開發(fā)者可根據(jù)場景選擇最適合的方案。
-
瀏覽器
+關(guān)注
關(guān)注
1文章
1042瀏覽量
36790 -
python
+關(guān)注
關(guān)注
56文章
4848瀏覽量
88920
原文標(biāo)題:“可在瀏覽器端運(yùn)行的Python”再發(fā)力
文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
Microsoft Edge瀏覽器iOS端插件功能上線
亞馬遜云科技推出Amazon Nova Act SDK預(yù)覽版,加速瀏覽器自動(dòng)化Agent落地
微軟Microsoft Edge瀏覽器構(gòu)筑立體式安全防線
老電視如何安裝瀏覽器?
edge瀏覽器識(shí)別 latex語法插件
騰訊AI To C業(yè)務(wù)大調(diào)整:QQ瀏覽器、搜狗等轉(zhuǎn)入CSIG
E2000 Speedometer測試瀏覽器性能
2024年12月瀏覽器市場份額報(bào)告:谷歌Chrome穩(wěn)居榜首
Chrome瀏覽器優(yōu)化Android性能,驍龍8至尊版表現(xiàn)突出
OpenAI醞釀創(chuàng)新:計(jì)劃開發(fā)集成聊天機(jī)器人的瀏覽器
AWTK 最新動(dòng)態(tài):支持瀏覽器控件

美國司法部將推動(dòng)谷歌出售Chrome瀏覽器
寫一個(gè)Chrome瀏覽器插件

通過瀏覽器訪問文件——P2Link內(nèi)置HTTP服務(wù)

評論