iOS用Kindleアプリから、該当電子書籍のAmazon商品ページを開くスクリプト

12月 11th, 2018
[`evernote` not found]
Facebook にシェア

Appleの戦略のせいで、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”を選択。

IMG 1058

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

IMG 1059

■Kindleアプリからスクリプトを呼び出す

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

IMG 1060

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

IMG 1061

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

IMG 1062

Leave a Reply

Comments links could be nofollow free.