Magicode logo
Magicode
0
2 min read

Shopee API v2 について

https://cdn.apollon.ai/media/notebox/ad7f2c06-0ca7-44d7-adbb-57697c6de69d.jpeg

2022年8月初頭

ShopeeのAPIがversion1からversion2へ移行を始めました。
がしかし、v1と比べてv2はとっかかりづらすぎるので自分用メモをまとめようと思います。。。
※これも知りたい!ってのがあれば、お気軽にコメント欄でお知らせください。  頑張って調べてみます。

現状メモ

すでにv1で無在庫用ツールを自作している。
v1の機能が段階的に使えなくなり、ツールの根本の部分がだめになった
それじゃ、v2に完全移行するっきゃないよね!

なにをしたいのか

APIを使っての無在庫出品&在庫管理のメソッドを完成させる

そのために何が必要か

Shopeeアカウント、出品用データ(csv)、ツール

すでにあるツール(v1)のメソッドはこんなかんじ

※1 アカウント連携用のurl作成
※2 urlにアクセスし、Shopeeアカウントでログイン後、連携承認ボタンを押す
※1,2は1年に1回更新の必要がある
ツールにて、各種ECサイトの情報をスクレイピングし、出品用csvを保存する
保存したcsvの中身をチェック → 修正が必要な部分は手直ししておく
csvを読み込み、連携済みのアカウントへ出品
ついでに元ECサイトの在庫切れも確認し、切れていればShopeeからも削除する

どこがだめになったの?

アカウント認証 期限切れとv1廃止のタイミングが重なった…
在庫切れ処理 ここがだめだと在庫切れに気づけないよぉ

全然だめじゃねえか!

v2の仕組み

アカウント認証とトークンについて

これが今回のアップデートの一番大きな変化であり、一番ややこしい部分です。
v1ではAPIとShopeeアカウントの認証を1度行えば、1年間は再認証なしでAPIを使用できましたが、v2では各種認証情報(アクセス&リフレッシュトークン、タイムスタンプ)の使用期限が異様に短くなっています。大体4時間くらいで切れます。
・認証の流れで取得したトークン情報を保存する。 ・4時間ごとに各種認証情報を再取得する。
この2点を抑える必要があります。 取得した情報は、取得時間と共にDBなどに情報を保存しておきましょう。
私はそもそも、Shopee公式のAPIを使用するとなんかややっこしいなぁ!って思っていたので、v1時代はpyshopeeというライブラリを使用していました。 v2では仕組みが変わってしまうので使えないジャン!っと思っていたのですが、製作者の粋な計らいでV2に対応したpyshopee2というライブラリが公開されています。
こちらは現在pipでのインストールはできず、ライブラリ自体を手元にダウンロードして読み込む必要があります。 pyファイルと同階層に配置してpyの方で通常通りimportすれば良いのでほとんど手間は変わりません。 むしろ、pyshopee2の中身がビミョーに使いづらいので、自分ようにカスタマイズして使っています。
続く

Discussion

コメントにはログインが必要です。