

JavaScriptファイルで取得したキーワードをPythonの関数の引数に指定して実行し、  
さらにその結果（関数の戻り値）をJavaScript側で受け取ることは可能ですか？

JavaScriptはブラウザ（Firefox）上で実行しています。  
Pythonもブラウザ上で実行したいです。


CC BY-SA 3.0
2017-10-18T00:10:41.773
38811
2021-04-26T13:14:06.450
2017-10-19T04:53:26.513
question
javascript python
JavaScriptファイルからPythonのコードを実行することは可能ですか？


JavaScriptとPythonの間で相互に関数を呼ぶには、  
「Eel」でしょうか？  
ブラウザは、「chrome」が最適かな？  
（参考URL）  
<http://www.inmyzakki.com/entry/2018/02/21/172202>  
<https://qiita.com/inoory/items/f431c581332c8d500a3b>  
などなどを参考に自分でしこたま呆れるほど  
工夫すれば不可能が可能になるかもしれません。  
間違った事を書いていたらごめんなさい。


CC BY-SA 4.0
2018-08-30T05:08:25.690
47931
2018-08-30T05:08:25.690
29919
38811
answer


### JavaScriptは Firefoxで動かし, Pythonも 同じ Webブラウザー上で, の場合

Pythonには各種各様の実装が存在し, Webブラウザー上で動作するものもあります  
ここの情報が詳しいでしょう:  
(stackoverflow.com) [Python in Browser: How to choose between Brython,
PyPy.js, Skulpt and
Transcrypt?](https://stackoverflow.com/questions/30155551/)  
(質問はもっと以前のもののようですが, その後(2019)に更新された模様)

対象の Pythonスクリプトを JavaScriptあるいは WebAssemblyへ transpileするものが多い中,
まるっと一式というのもあるようです(CPythonごと)

ここに載ってなさそうな他のものに [RustPython](https://rustpython.github.io/) もあります  
~~(WebAssemblyへ transpile~~ Python自体が WASI (WebAssembly System
Interface)モジュールとして動く)

* * *

**JavaScriptからの Python呼び出しについて (追記)**

上記 stackoverflow.comの元記事 [Running Python in the
Browser](https://yasoob.me/2019/05/22/running-python-in-the-browser/) や,
それぞれのドキュメントから, 大抵は JavaScriptから Python呼び出せそうですが, すべて確認できてるわけではありません

利用する場合は確認を。(その動作について)質問の場合, 条件を絞るとよいでしょう。

### Pythonをサーバーサイドへ, Webブラウザー(JavaScript) からアクセスの場合

念の為に？ Pythonの Web フレームワークも記しときます  
Web フレームワークも各種各様あります  
[https://ja.wikipedia.org/wiki/Python#Webアプリケーションフレームワーク](https://ja.wikipedia.org/wiki/Python#Web%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF)

この他には [FastAPI](https://fastapi.tiangolo.com/ja/) というのも

([HTTP](https://developer.mozilla.org/ja/docs/Web/HTTP) について理解があれば) 標準パッケージにも
[http.server --- HTTP
サーバー](https://docs.python.org/ja/3/library/http.server.html) などが存在します


CC BY-SA 4.0
2021-04-21T02:17:56.840
75417
2021-04-26T13:14:06.450
2021-04-26T13:14:06.450
43025
43025
38811
answer