初歩のランキング取得ツールのソースを公開します

前々回、ランキングの上昇回数をモノレートやプライスチェックのグラフを目で追って数えるのではなく、モノレートの数値データをコピペしてExcelで簡易的にカウントする方法を紹介しました。

今回は簡易カウントから発展した、自作ツールへと進んでいきます!

簡易カウントでもしんどい

簡易カウント法で、ある程度の「売れている、売れていない」をすばやく数値化して判断できるようになり、なんとなく「10個くらい」よりは明確な数字が好きなボクには非常に助かりました。

しかし、モノレートにランキングデータが無かったり、あっても飛び飛びで十分なデータが無いこともありました。

簡易カウントのおかげで数えるのは楽にはなりましたが、一定期間内のランキング上昇回数は、

季節や販売開始からの時間経過などによって刻々と変化していきます。

「リサーチした時は売れていたのに・・・」

と、もう売れていない商品を仕入れないためには、過去の一時点の売行きデータをいつまでも使っているわけにもいきません。

とはいえ、仕入のたびに再度カウントし直すのは、扱う商品数が多いボクには簡易カウントでもけっこうな手間になります。

そこで、ボクは考えました。

「モノレート」ってただの過去の蓄積データでしょ?
※「ただの」で十分すごいんですが!

なら、モノレートと同じように自分もランキングを継続的に貯めていけばいいんだ!

自分専用のモノレートを作るしかない!と進むことにしました。

公開!初歩のランキングデータ取得ツール

今回も前回と変わらずPA-APIで作りました。

ASINから商品マスタの情報を取得するツール自体は以前にもうできていたため、あとはどう継続的に情報を取得するか、の方がテーマになります。

ずばり言って、ボクの取得ツールは↓このサイトの情報を大きく参考にして応用したものなので、こちらを参考にしていただければ、取得ツールとしてはほぼ同じものができるんじゃないかと思います。

⑤API実践-商品-PHP

今回は「ツールって意外とかんたん」、ということをお伝えするため、
そしてもし「自作ツールとか意味不明!むり!」と思っている方がいるなら、そこまでむずかしくないよ!と心理的ハードルを下げていただくために、

ボクが使っていた拙いランキング取得ツールのソースを公開してしまいます。もしかしたらそのうち恥ずかしくて削除するかもしれません!
たぶん本職の方が見たら「もっとキレイに!」「効率的に!」できると思いますが、これもハードルを下げるための苦肉の策だと思って笑ってやってくださいw

ツールを動かしてみよう

動かし方がわからねぇ、、、という方は何とか今回や過去の参考リンクから、xamppなどをインストールして環境を作ってぜひがんばってみてください!
というのも、人のPC環境をサポートするほどの能力はボクにはありませんので・・・

とはいえ自分の資産は自分で守らなければなりません。

くれぐれも、PCに何かインストールしたり実行してPCの動作がおかしくなったりトラブルが起きても自己責任、の覚悟の上でお願いします!

以下WindowsPCにxamppをインストールした、PHPを実行できる環境ができている、という前提で進めますが、動作環境ができたら、

  1. このソースの35~37行目のアカウント情報を自分のアソシエイト情報に書き換えた上で、”JPRankGet.php“と名付けてxampp/htdocsに保存
  2. そのhtdocs内にsalesrankフォルダを作成
  3. salesrankフォルダの中にASINを10個程度、こんな感じで記載したRankingCheckList.txtというファイルを用意して
  4. 同じくsalesrank内にworkフォルダを作成
  5. 「何があっても自己責任」と唱えてから、
  6. ブラウザのURLに http://localhost/JPRankGet.php  を入力またはコピペして実行

※PA-APIアカウントの登録方法は、ボクはこのページを参考にしました!

PA-APIアカウント登録方法

うまく動いた場合、少し経つとこんな画面になります。

jprankget

(ボクの環境では)警告が2つ出てきましたが、特に心配ありません。

1つ目は「ランキングの出力ファイルが無かった(から作ったよ)」

2つ目も「エラー出力ファイルが無かった(から作ったよ)」

的なものです。

実はもうすでに処理は終わっています。

では、出力ファイルはどうなっているのか?sakesrankフォルダを見てみると、

jprankget2

RankingCheck.csvが出力データになります。ファイルの中を見てみましょう!

jprankget3

何かできていますね!

ASIN、取得日時、そして現在のランキングが取得されています!

データが正しいかどうか一番上のASINを実際のページで見てみましょう!

https://www.amazon.co.jp/dp/B0048H3SLO

jprankget4

↑こんな商品ページが開きました!そして下へ行くと!

jprankget5

本当に234,211位!!

当たり前といえば当たり前ですが、去年は一歩一歩、こんなことができるだけで大はしゃぎでした。

26.7%

ただ、この出力結果をもう一度よく見てください。。。

jprankget3

10個ASINを用意したのに、、8個しか出力されていませんね、、

そういえば、エラー出力ファイルが無かった(から作ったよ)という警告が出てましたので、workフォルダを見てみると・・・

jprankget6

エラーファイルができていました!

中を開くと

jprankget7

やはり、データを取得できなかった2つのASINが吐き出されています。

うーん、なんでかなー。というか、このエラーの多さがPA-APIの抱える問題なので。。。ボクはもうあきらめています。

たとえば、もう1回そのまま「http://localhost/JPRankGet.php」を再実行して、先ほどと同じ10件のASINのデータ取得を試みるとどうなるか・・・

jprankget8

(ちなみにモノレートのように「データを蓄積」していくために、実行するたびに同じファイルにデータを追加していく方式をとっています)

1回目は10件中8件のデータが取れましたが、2回目は9件取れています!

そして、今回は先ほどは取れていなかった2件が無事取れました!

・・・しかし、先ほど取れていた1件が今回は取れませんでした。。

と、まったく意味不明です。そういう気まぐれなものだと受け止めて、

エラーの発生を前提にして、どう処理していくのか

を考えて付き合っていくしかないと思っています。。

ちなみに1500件でエラー件数をカウントしたところ、1099/1500がOKでした・・・

エラー率26.7%!

今回はここまでです!読んでいただきありがとうございます!そして、もし試してみた方がいたら、ぜひ感想聞かせてください!

3 件のコメント

  • […] PHPでAmazonのMWSを使用して,マケプレの出品情報を取得する http://nanoappli.com/blog/archives/4371 nanoappli.com  5 users Amazon MWSのサンプルコードでClass not found – Qiitahttp://qiita.com/moyashimanjyu/items/d2ef443785233a26fdd4## Amazon MWSとはAmazonマーケットプレイスに出店してるショップ向けに、商品管理や注文管理ができるAPIが提供されている。Amazon マーケットプレイスWebサービス(MWS)… Qiita  【AmazonAPI】APIを使ってAmazonの在庫状況を取得しよう(Amazon Product Advertising API) – *いしのなかにいる*http://blog.malor.net/entry/2016/03/17/000000こんにちは! ちょいと思い立ってAmazon Product Advertising APIの勉強を始めました。 後で読み返せるように、アプリを動かすまでの手順をまとめておきます。 前準備:… *いしのなかにいる*  初歩のランキング取得ツールのソースを公開しますhttp://amaasin.com/rankingget1/前々回、ランキングの上昇回数をモノレートやプライスチェックのグラフを目で追って数えるのではなく、モノレートの数… 副業だからツールで稼ぐアマゾン輸入!  […]

  • はじめまして

    コピペして、必要な部分を変更して実行しましたが、下記のエラーメッセージが出ました。

    Warning: file_get_contents(salesrank/work/RankingCheck-error.txt): failed to open stream: No such file or directory in C:\xampp\htdocs\JPRankGet.php on line 93

    全くの初心者です。
    どのように変更すればいいのでしょうか。

    • 亀ちゃんさん こんにちは。
      試してくださってありがとうございます!

      それはたしか記事中の画像にも出てくる「RankingCheck-error.txtファイルがないよ(だから作るよ)」という警告(Warning)なので、実際には処理の実行はされていると思われます。
      他にエラーが無ければ、フォルダを確認してみたらランキングデータがGetできているかもしれません。

  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です