barilog

エンジニアリング見習い雑記

amazonで自動で商品を選んでカートに入れるプログラムを作ってみた

こんにちはbarisukeです。

 

この記事ではamazonで自動で商品買うためのプログラミング方法を紹介します。

 

 

まず最初に今回できあがるであろうプログラミングコードを紹介します。

github.com

※参考になったら"star"ボタン押していただけるとめちゃ嬉しいです。

 

〜〜コードを動かす手順〜〜

1 Python3環境を構築する

1.1 anacondaのインストール

 

2 zipファイルをダウンロードする

 2.1https://github.com/barisuke/amazon_scrayping/archive/master.zip

 

3 pipで必要なパッケージをインストール

3.1 コマンドプロンプト(ターミナル)を開いてrequirements.txtがあるフォルダ(ディレクトリ)に移動

3.2 pip install -r requirements.txt のコマンドをうつ

 

4 コードを動かしてみる

4.1 コードの中のURL, TARGET_WORDS, TARGET_PRICE_RATEを好みのものに書き換え、上書き保存

4.2 python amazon_scrayping.pyとコマンドをうつ

4.3 うまくいくように祈る

 

 

 以上がコードを動かす手順です。

 

補足:

4.1に関して

 

URLは

www.amazon.co.jp

のようにamazonの検索窓で検索したあと表示されるURLをつかってください。

f:id:barisuke:20180416032351p:plain

 このような商品の一覧が出てくる画面のURLをコピってください。

 

プログラムではここで中古品が存在する商品のurlを全部取得します。

 

その後

f:id:barisuke:20180416032549p:plain

のように中古品のページに自動的に遷移します。

 

このプログラムでは以下の基準で商品をカートに入れます。

 

1.指定した語句が「コンディション」の文中にあるか?

「コンディション」の文に注目し、TARGET_WORDSで指定された語句(未開封 綺麗など)が全てコンディションの文中に入ってる商品のみを選択します。

 

2.「商品価格+配送料」が新品のそれよりもお得か?

「商品価格+配送料」を取得し、新品の価格との比較を行います。

「商品価格+配送料/新品価格を計算し、これがTARGET_PRICE_RATE以下の商品のみを選択します。

 

例えばTARGET_PRICE_RATEが0.5だった場合、上の商品はこの画像では映ってませんが新品価格が16960円であり、中古商品の最安のものが8580+350=8930円ですね。16960円*0.5は8800円なので、最安のものでも130円オーバーでアウトです。

ですので、TARGET_PRICE_RATE=0.5に設定した場合、このページではどの商品もカートに入りません。