python boto を使ってAmazon MWSに問い合わせる(その4) [python]
Amazon MWSの操作の中で、今度は価格改定である
他の出品者の価格がわかり、自身の価格がわかり
価格改定ができれば、簡単な自動価格改定ツールを作成することができる
まず、そのためには、botoで価格を改定できるようにしなければならない
もっとも、botoはMWS用のライブラリなので、そのあたりも簡単にできるようになっていて
submit_feedという属性が用意されている
これに必要事項を記入して起動するとアマゾンにフィードが送られる
フィードにはプレーンテキストとXMLファイルの2つの形式があり
アマゾンはXMLを推奨しているようだが、プレーンテキストの方が簡単そうだ
結局、やるべき作業は手動での作業手順とまったく同じである
手動でファイルをアップロードするには、
まず、アマゾンが用意したタブ区切りファイルをダウンロードして
これにSKUと価格を入力する
アマゾンのセラーセントラルにある「アップロードによる一括商品登録」というページの
「価格と数量変更ファイル(本・ミュージック・ビデオ・DVD)」という項目を選択し
ここから先のファイルをアップロードすると、セラーセントラルでの価格が改定される
改定が行われたかどうかは、すぐ下に表示されている
「在庫ファイルのアップロードステイタス」を更新すると
エラーか成功かが表示される
それとまったく同じことを boto で行うわけである
フィードの形式などはよくわからなかったが、
とりあえず、このときにアップロードするタブ区切りファイルをテキストエディタで開いて
そのままフィードとして送ってみたら、価格が改定された
そのスクリプトは以下の通り
しかし、フィードの部分が非常に見苦しい
もうちょっと何とかしないといけないだろう
出力結果は以下の通り
SubmitFeedResponse{u'xmlns': u'http://mws.amazonaws.com/doc/2009-01-01/'}(SubmitFeedResult: SubmitFeedResult{}(FeedSubmissionInfo: FeedSubmissio..................
この情報をもとに問合せたら、フィードがうまく処理されたかどうかわかるのだが、
要は価格が改定されていればいいので、エラーが発生しなければ見なくてもかまわない
接続先が、amazonaws.comになっているのがちょっと気になるが、
これも、あまり深く考えないことにする
スポンサードリンク
他の出品者の価格がわかり、自身の価格がわかり
価格改定ができれば、簡単な自動価格改定ツールを作成することができる
まず、そのためには、botoで価格を改定できるようにしなければならない
もっとも、botoはMWS用のライブラリなので、そのあたりも簡単にできるようになっていて
submit_feedという属性が用意されている
これに必要事項を記入して起動するとアマゾンにフィードが送られる
フィードにはプレーンテキストとXMLファイルの2つの形式があり
アマゾンはXMLを推奨しているようだが、プレーンテキストの方が簡単そうだ
結局、やるべき作業は手動での作業手順とまったく同じである
手動でファイルをアップロードするには、
まず、アマゾンが用意したタブ区切りファイルをダウンロードして
これにSKUと価格を入力する
アマゾンのセラーセントラルにある「アップロードによる一括商品登録」というページの
「価格と数量変更ファイル(本・ミュージック・ビデオ・DVD)」という項目を選択し
ここから先のファイルをアップロードすると、セラーセントラルでの価格が改定される
改定が行われたかどうかは、すぐ下に表示されている
「在庫ファイルのアップロードステイタス」を更新すると
エラーか成功かが表示される
それとまったく同じことを boto で行うわけである
フィードの形式などはよくわからなかったが、
とりあえず、このときにアップロードするタブ区切りファイルをテキストエディタで開いて
そのままフィードとして送ってみたら、価格が改定された
そのスクリプトは以下の通り
しかし、フィードの部分が非常に見苦しい
もうちょっと何とかしないといけないだろう
# -*- coding: utf-8 -*-
from boto.mws import connection
MarketPlaceID = 'A1VC38T7YXB528'
MerchantID = '************'
AccessKeyID = '***************'
SecretKey = '**************************************'
conn = connection.MWSConnection(
aws_access_key_id=AccessKeyID,
aws_secret_access_key=SecretKey,
Merchant=MerchantID)
conn.host='mws.amazonservices.jp'
def amazon_mws_boto_kakaku_kaitei(feed_content):
response = conn.submit_feed(
FeedType='_POST_FLAT_FILE_PRICEANDQUANTITYONLY_UPDATE_DATA_',
PurgeAndReplace=False,
MarketplaceIdList=[MarketPlaceID],
content_type='text/tab-separated-values',
FeedContent= feed_content
)
return response
if __name__ == '__main__':
feed_content = """TemplateType=PriceInventory Version=2011.0928
この行はAmazonが使用しますので変更や削除しないでください。
商品管理番号 販売価格 在庫数 販売価格の下限設定 販売価格の上限設定
sku price quantity minimum-seller-allowed-price maximum-seller-allowed-price
T2-JZ6C-72PN 1370
"""
res = amazon_mws_boto_kakaku_kaitei(feed_content)
print res
出力結果は以下の通り
SubmitFeedResponse{u'xmlns': u'http://mws.amazonaws.com/doc/2009-01-01/'}(SubmitFeedResult: SubmitFeedResult{}(FeedSubmissionInfo: FeedSubmissio..................
この情報をもとに問合せたら、フィードがうまく処理されたかどうかわかるのだが、
要は価格が改定されていればいいので、エラーが発生しなければ見なくてもかまわない
接続先が、amazonaws.comになっているのがちょっと気になるが、
これも、あまり深く考えないことにする
スポンサードリンク
2015-06-28 15:15
nice!(0)
コメント(0)
トラックバック(0)
コメント 0