iOS用Kindleアプリから、該当電子書籍のAmazon商品ページを開くスクリプト
12月 11th, 2018Appleの戦略のせいで、iOS用のKindleアプリから直接電子書籍を購入できなくて実に不便だ。マンガの続きの巻を読みたいと思っても、サンプルをダウンロードするか、ほしい物リストに追加するしかできなくて、実際に購入するにはSafariでいちいちAmazonのサイトにアクセスしないといけない。
そこで、Kindleアプリで読んでいる電子書籍の、Amazon商品ページをSafariで開くPythonスクリプトを書いてみた(スクリプトを実行するには、Pythonista 3が必要)。
■準備
①Pythonista 3上で下記のスクリプトを入力して、適当なファイル名を付けて保存。
import urllib.request
import re
import appex
from objc_util import *
def main():
input_url = appex.get_url()
if input_url == None:
print("No URL")
else:
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36',
}
req = urllib.request.Request(input_url, None, headers)
res = urllib.request.urlopen(req).geturl()
regex = 'asin=([a-zA-Z0-9]+)'
matchobj = re.search(regex, res)
if matchobj:
amazon_url= 'http://amazon.jp/dp/' +matchobj.group(1)
UIApplication.sharedApplication()._openURL_(nsurl(amazon_url))
if __name__ == '__main__':
main()
②Pythonista 3の”Settings”→”Share Extension Shortcuts”を選択。

③「+」ボタンをタップして、先ほど保存したスクリプトを指定。

■Kindleアプリからスクリプトを呼び出す
①Kindleアプリから、iOSの「共有」メニューを開き、「Run Pythonista Script」をタップ。
(Pythonista 3をインストールしているのにこの項目が表示されていない時は、共有メニューの「その他」から追加する)。

②先に用意したPythonista 3のスクリプトをタップ。

③Amazonの商品ページが開く。
