iOSにてPythonコードを実行できるPythonista3を知りまして、「これは良さそうだ」と購入してインストールしてみました。しかし、正直なところWEB系のプログラムの実行が苦しいので導入を断念しました。
Pythonista3の特徴
Pythonista3はiOS(iPhone, iPad)にてPythonを実行できるアプリです。
iOS端末でPythonコードを書いて実行できるので、満足なPCが用意出来ない環境でのPython学習やiOS端末上でのPythonによる自動処理に利用できて魅力的なアプリです。
有料アプリで1,000円程度ですが、Pythonを動くこととGUI環境が用意されていることを考えるとリーズナブルなくらいだと思いました。
しかしWEB系プログラムが苦しい
さっそくポチった
Pythonista3を知ってからこれを使ってiOS端末からWEB APIを叩くGUIのミニアプリの様なものを作ろうと思い立ち、App Storeで購入しました。
Pythonista3を扱った以下の書籍も買い、GUIの作り方を少し調べてから実際にミニアプリの製作に取り掛かりました。
WEB APIを叩いてみた
WEB APIを叩く方法としてurllibを使ってGETリクエストを送ってみました。
しかしエラーが出てしまうのです。
SSL: CERTIFICATE_VERIFY_FAILEDというものです。
ちなみにurllibだけではなく、よく使われるrequestsを使っても同様です。
SSLに関わるエラー
エラーの内容はその文面の通り、SSLに関するものです。
以下は関連のissueです。
Pythonista3がPython3.6であることが原因なのか、Python環境によるSSLエラーのようです。
Pythonista自体もここ2年アップデートされていないので、2022年現在の環境としては少し古いと思います。
とりあえずエラー回避はできる
このSSLエラーに関しては、とりあえずでエラーを回避できます。
以下のコードを追加します。
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
これで「とりあえず」は動くようになります。
しかしSSLを無視してセキュリティ的に危ない橋は渡りたくありませんので、やはり現実的にこれはやりたくありません。
そして返品
結局のところ、一番やりたかったWEB APIを叩く処理がSSL絡みの問題で出来ないとなるとPythonisita3を使う意味は無いので使用を断念することにしました。
数日でもアプリの試用期間があれば気づけたかもしれませんが、既に先払いでアプリを購入していましたので、初めてAppleに対してアプリの返品(返金)を依頼しました。
Pythonista3自体はPython3.6が動く環境として、手軽なPythonの学習環境としては2022年の今もとても有用でリーズナブルだと思います。
しかし今回は残念ながら私自身の個人的な用途には使えないと判断して導入を断念することにしました。
せっかく書籍も買ったのに。。。
Pythonista3の代替アプリ :
Pythonista3の代わりとなるアプリを探してみたところ、ひとつ見つけました。
「Pyto」というアプリです。
こちらは試用期間がありましたのでインストールして使い勝手を試してみました。
正直なところ、GUIの機能はPythonista3の方が良さそうですが一番の目的だったWEB APIを叩く処理は問題なく実行できました。
アプリ自体は不安定だとのレビューがありましたが、現在もアップデートが行われていますのでGUI機能は安定性の向上に期待したいです。
コメント