今まで紹介してきたショートカットはコチラ!!

こんにちは,しまさん(@shimasan0x00)です.
先日,メルカリで出品されている商品がAmazonではいくらなのかを調べるショートカットを作成しました.
まぁ個人的な需要なのですが逆方向(Amazon -> メルカリ)も欲しいので作ります.
ちなみにiOS12の頃にやられている方はいたようです.
最高,最低値,平均値などを算出しているみたいですね.
私の場合は最頻値を表示することにしていたりと各種変更しています.
今回もPythonista3+ショートカットを使用してAmazon上でサクッとメルカリでの値段を調べたいと思います.
動画版
スポンサーリンク
必要なアプリ
- Pythonista(1200円)
- Amazonのアプリ
- (必須ではない)Mercariのアプリ
スポンサーリンク
Pythonista3の注意点

Pytonistaを使ってスクリプトを実行するとコマンドライン引数としてショートカット上の値をsys.argv
でアクセスできるとあります.
まぁ控えめにいって最高ですね.本当にその通りであればですが…
そう,Pythonista3は神アプリですがiOS/iPadOS13においてショートカットからコマンドライン引数を渡せずにエラーになる問題があります.
Pythonistaのコミュニティで議論されています.
ではショートカット上で生成される引数をスクリプトに渡したいどうすればいいのでしょうか??
結論からいうと結構無理やり渡すことになります.
まず該当アプリから調べたい商品のテキストを得たらURLとしてエンコードします.
Pythonistaのスクリプトは実行URLを生成できるので,生成後スクリプト上に用意しておいた仮引数をエンコードした商品テキストに置き換えます.
そうして完成したPythonista実行URLを実行します.
(回りくどいですが,アップデート来るまで待ちましょう.)
環境
- iPad Pro(2018) 11inch Model
- iPadOS 13.3
スポンサーリンク
ショートカットを作成する
まずはショートカットの全容を以下に示します.


前回よりも構成がシンプルですね.それは前処理していないからです.
メルカリよりは商品名を好き勝手しない…と思っているのですが,使用していて【xx!】とか(xx)みたいなのが目立つなら前処理を入れてもいいと思います.
大まかには以下の構成となっています.
- Amazonから商品名を取得する
- 商品名(テキスト)をエンコード
- Pythonista実行コードを用意
- 仮引数をエンコードしたテキストに置き換え
- URL展開
Pythonistaで使用するPythonのコードは以下のGitHubにあるので使用してください.
- テキストを分割:「カスタム」を選択.httpで分割する
- リストから項目を取得:最初の項目を取得
- URLエンコード
- 変数に追加:keywordに追加
- URL:Pythonistaの実行URL
- テキストを置き換え:tomatoをkeywordに置き換え
- URLを開く
Pythonistaで実行URLを生成
まずは右上のレンチをクリックします.

次はShareを選択してください.

最後にCreate Executable URLを選択したらコピーされるので上記のPythonista実行URLを貼る場所で使用してください.

ショートカットを実行してみる
では実際に作成されたショートカットを使用していきましょう.
メルカリの商品ページの検索結果最初のページ分相当の商品からの結果を返しています.


ちゃんと表示されていますね!!!これがショートカットワンタップなのは最高.
よくよく考えるとメルカリの商品の値段のつけかた自由なので最頻値は効果が薄い可能性がありますね.
さいごに
今回はメルカリ上でサクッとAmazonでの値段を調べるショートカットをPythonistaと絡めて作成しました.
ショートカット自体も結構色々できますが,Pythonを絡めるとできることめちゃくちゃ増えますね.
楽しくなってきました.ライフハック生活だ!!!!