質問: ### 自己紹介 非エンジニアのPython初心者です。 業務効率化をするためにPython勉強中です。 支離滅裂な質問でしたら、お許しください。 ### 環境 言語:~~Python3.7.5~~→3.8.5 PC:Windows10 エディタ:VSCode その他:Microsoft365を使用中 ### 背景 Pythonプログラムをローカル環境で作成しました。(pyautoguiを用いた簡単な業務自動化プログラムです。) このプログラムを職場のメンバー全員に使用してもらおうと考えております。 ### 質問 職場メンバー全員のPCを環境構築するのは流石に億劫だったため色々と調べたところ、Web上でPythonのプログラムを動かせると知りました。 3点質問ですが、 1MicrosoftのAzureは、Web上でPythonを動かす事は可能でしょうか? 2可能な場合、pyautoguiなどの外部ライブラリをWeb上にインストールするのでしょうか? 3また、Microsoft365に加入していますが、何か恩恵はありますでしょうか? すみませんが、ご教授ください。
回答: まず、PyAutoGUIに特化せず、一般的なこととして回答します。 > > 1MicrosoftのAzureは、Web上でPythonを動かす事は可能でしょうか? > > > 可能です。AzureではLinuxの仮想マシンを構築することもできるので、それなりの設置作業をすればPythonを利用することは自由です。 Azure 上の Python - Microsoft Azure > > 2可能な場合、pyautoguiなどの外部ライブラリをWeb上にインストールするのでしょうか? > > > そういうことになります。 > > 3また、Microsoft365に加入していますが、何か恩恵はありますでしょうか? > > > うーん、今、質問者さんがやりたいことに直接恩恵があるかどうか分かりませんが、Microsoft365に加入していることで利用できるはずのMicrosoft Graphを使い、PythonでOfficeの機能を使うことができる、といったところでしょうか。 Microsoft Graph および Python の概要 **で、PyAutoGUIを使ったPythonプログラムは、サーバー上に配置して各クライアントPC上で動作するのか。** ここからがむしろ本題ですが、WEBアプリとして動くものは、Pythonに限らずリモートのサーバーと自PCであるクライアントのWEBブラウザ内で完結できるものです。質問者さんはPyAutoGUIを使った業務自動化プログラムを使いたい、とのことで、これはクライアントPC上でキーボードやマウスの自動操作を行うものなので、WEBアプリとしては動作できません。サーバー上にPyAutoGUIその他のモジュールをインストールして動くようにしたとしても、そのサーバー上で作用するだけものものなので、クライアントPC上では関係ありません。あくまでクライアントPC上にそれぞれインストールするような形態にしないと、PyAutoGUIを使ったPythonアプリケーションは動作しません。これは、PythonのWEBフレームワークであるDjango、Flask、Bottleなど、いずれも事情は同じです。WEBアプリとしての検討は、別の機会に行いましょう。