楽天ポイントせどりでリサーチをするけれどなかなか良い商品を見つけることができないという方。ちょっとしたITスキルを使うことにより楽天でのリサーチが劇的に向上します! Rakuten Developersを見るとたくさんのAPIが存在するのがわかります。そのなかで楽天リサーチに役立つ「楽天市場商品検索API」の使い方を紹介します。
Rakuten Developersにログイン
Rakuten Developers(https://webservice.rakuten.co.jp/)にアクセスして、楽天会員のIDでログインしてください。

アプリID発行
「アプリID発行」をクリックしてください

アプリ新規作成フォームに必要事項を入力してください。

① アプリ名: あとで自分が何のためのアプリか分かればなんでもOK ② アプリURL: Web APIを使うサイトのURLを記載するのですが、これもなんでもOK ③ 詳細情報を開く: 今回は検索だけで使うなので省略 ④ アンケートなので省略 ⑤ 認証: 表示されている数字5文字を入力 ⑥ 最後にクリック!

この情報は楽天APIを使う上で重要な情報になります。 Rakuten Developersにログインすればいつでも見れるので、メモを取る必要はありません。
テストフォームで動作確認
アプリIDを取得したら実際の動きを見てみましょう。 https://webservice.rakuten.co.jp/explorer/api/IchibaItem/Search/

アプリIDはすでに入力済みになっています。入力されてなければ取得したアプリIDを入力してください。 ① keyword: 検索したいキーワードです。リサーチしたいブランド名や商品名などを入力してください。 ② genreId: 検索したいジャンルに紐づくIDを入力します。ジャンルIDの調べ方は別記事で紹介しますが、今回は全ジャンルを対象にする「0」を設定しましょう。 ③ GETボタン: クリックすると結果が表示されます。 URLのところには、実際に楽天APIを呼び出すためのパラメータ付きのリクエスト(URL)が表示されるので開発のときの参考にしましょう。 GETボタンの下に、楽天APIから返ってきた結果が表示されたと思います。これらをプログラムで処理することで自動リサーチが実現できます。

API利用時の各種パラメータはAPI詳細ページに記載されています。https://webservice.rakuten.co.jp/api/ichibaitemsearch/ 代表的な(というか私が使っている)パラメータについて確認してみましょう。
APIリクエスト用URLの作り方
リクエストURLのルールは以下の通りです。
https://app.rakuten.co.jp/services/api/IchibaItem/Search/20170706?applicationId=[アプリID]?[parameter1]=[value1]&[parameter2]=[value2]…
「LEGO」を「トイザらス」で探したい。最低価格は「100」円で最高価格は「10,000」円。「中古」と「リチウム」を含む結果は欲しくない。 安い順に上位30件を確認したい。 という場合は以下のようになります。
https://app.rakuten.co.jp/services/api/IchibaItem/Search/20170706?format=json&keyword=LEGO&genreId=0&shopCode=toysrus&page=1&sort=-itemPrice&minPrice=100&maxPrice=100000&NGKeyword=中古 リチウム&applicationId=[アプリID]
このリクエストURLをブラウザのアドレスバーに入力すると値が返ってくることがわかります。

プログラムに組み込む
私はawsのlambdaをプラットフォームにpythonベースでプログラミングをしています。以下はプログラミングの一例です。
def lambda_handler(event, context):
url = 'https://app.rakuten.co.jp/services/api/IchibaItem/Search/20170706'
payload = {
'applicationId': 'XXXXXXXXXXXXXXXXX'
}
if 'genreId' in event:
if len(event['genreId']):
genreId = event['genreId']
payload['genreId'] = event['genreId']
if 'page' in event:
page = event['page']
payload['page'] = event['page']
if 'shopCode' in event:
if len(event['shopCode']):
shopCode = event['shopCode']
payload['shopCode'] = event['shopCode']
if 'genreName' in event:
if len(event['genreName']):
payload['genreName'] = event['genreName']
if 'keyword' in event:
if len(event['keyword']):
payload['keyword'] = event['keyword']
payload['minPrice'] = 100
payload['maxPrice'] = 100000
payload['NGKeyword'] = 'リチウム 中古'
r = requests.get(url, params=payload)
resp = r.json()
楽天APIを利用するためにアプリIDを取得する方法や、APIの基本的な使い方は以上になります。 自分のリサーチに役立てるプログラムを作っていきましょう。
Comentários