【Python】KeepaAPIを使うときの注意点

スポンサーリンク

KeepaAPIを使おうとした時に、分かったことがあったので、記録に残します。

KeepaAPIのToken

Keepaを使っている人は知っているでしょうが、

KeepaにはTokenと呼ばれるHPみたいなものがあります。

商品情報を取得するとTokenは消費されます。

Tokenは有料アカウントによって最大値が変わります。

高い有料プランに契約すれば、1分間当たりのToken回復量が増加します。

最大Tokenは、Token回復量の1時間分が最大値となります。

KeepaAPIのTokenの残りを調べる方法

調べる方法は2つあります。

①つ目は、Keepaのサイトから調べる方法。

②つ目は、KeepaAPIから取得する方法です。

Keepaサイトから調べる

Keepaのサイトにログインしてください。

下記ページに移動してください。

『Currently acailable tokens:***』と書かれています。これが残りのTokenです。

KeepaAPIから取得する。

下記の関数を使う事で取得可能です。

api = keepa.Keepa(api_key)
print(api.tokens_left)

結果として、【300】が返ってきました。

KeepaAPIのToken消費量

基本的には、商品情報を取得すると1Token消費します。

しかし、商品情報取得時にオプションをつけると、Token消費量は多くなります。

オプションとは何かというと、オファー(offer)情報です。出品者情報ですね。

商品情報を取得する時に出品者情報を取得する

ちなみに今までは、オファー情報を取得していませんでした。

オファー情報を取得するための方法を記載します。

api = keepa.Keepa(api_key)
products = api.query('B083P5P8B5',domain='JP',offers=20)
print(api.tokens_left)

queryをするときに、[offers]の値を指定します。offersは20~100で指定するらしいです。

最大取得する出品者を指定し、出品者が多いほどTokenは使用されます。

逆に言うと、出品者が少なければ、Tokenの消費量は少なくなります。

実はTokenはマイナスになる!?

現在のKeepaAPIの最大Tokenは300です。

300件分の商品情報しか取れないのかと言うと実は違います。

1度のクエリ(query)で1000件分の商品情報を取得すればいいのです。

現在の残りTokenが300とし、1000件の商品情報を取得する。

この場合、残りのTokenは【-700】となります。※出品者情報をとってないとする

マイナスの間は、KeepaAPIを使う事はできなくなります。

2時間20分は使えなくなります。。。

ようは、短時間で取得したい場合は、

細かく商品情報を取得するのではなく、

1回で複数の商品情報を取得した方がお得なのです。

KeepaAPIのTokenとKeepaサイト上のTokenは別物

Keepaサイト上にもTokenがあります。

サイト上のTokenとAPIのTokenは別物です。

KeepaAPIのTokenを使い切ったとしても、サイト上Tokenは使用されていません。

まとめ

①KeepaAPIを使用する場合、Tokenという使用制限がある。

②有料プランで最大Tokenを増やす事は可能。

③商品情報を取得すると1Token使用する。

④商品情報+出品者情報を取得すると1Token+α

⑤1クエリで複数取得すれば、KeepaAPIの最大Tokenよりも取得は可能。この場合、残りTokenはマイナスになる。

⑥KeepaAPIとKeepa(サイト)のTokenは別物

コメント

タイトルとURLをコピーしました