Appleの戦略のせいで、iOS用のKindleアプリから直接電子書籍を購入できなくて実に不便だ。マンガの続きの巻を読みたいと思っても、サンプルをダウンロードするか、ほしい物リストに追加するしかできなくて、実際に購入するにはSafariでいちいちAmazonのサイトにアクセスしないといけない。 そこで、Kindleアプリで読んでいる電子書籍の、Amazon商品ページをSafariで開くPythonスクリプトを書いてみた(スクリプトを実行するには、Pythonista 3が必要)。
■準備
①Pythonista 3上で下記のスクリプトを入力して、適当なファイル名を付けて保存。
import urllib.requestimport reimport appexfrom 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の商品ページが開く。

コメント