【2021年版】誰でもできる!! pythonでメルカリをスクレイピングする簡単な方法

読了時間目安: 2

PC初心者でもpythonを使ってメルカリをスクレイピングする方法についてまとめていきます。
最終的にはスプレッドシート にデータをまとめるところまで解説します。

この記事が向いている方

  • ebayの仕入れ元としてメルカリをよく使う
  • 国内で検索してからebayでリサーチしている
  • キーワード検索を多用する
  • pythonでメルカリをスクレイピングしたいと考えている
  • データコピペするのめんどくさい。。。

それではどうぞ!

できること

このプログラムではメルカリで設定した検索結果から以下の内容をスクレイピングすることができます。

スクレイピング内容

  1. タイトル
  2. URL
  3. 価格
  4. 画像
  5. 状態
  6. 送料
  7. 備考
  8. 画像URL

動作環境

誰でもすぐに行えるようにGoogle Colaboratoryを使用しています。(以下GC)

このGCはスプレッドシート と同じようにグーグルアカウントがあって

OSがMACでもWINでもPCとネット環境さえ整っていれば

誰でもアクセスしてプログラムを実行することが可能です。

仕様

GCは簡単に使用できる反面いくつかの制約、制限があります。

普通に使用する分にはあまり気にはならないですが、簡単にいうと長時間プログラムを実行し続けることができません。

主な制限はこちらです。

GCの制限

・RAM:12GB 
・ディスク:CPU/TPC:最大107GB、GPU:最大68GB
・90分ルール : 何も操作せずに90分経つとリセット
・12時間ルール : インスタンスが起動してから12時間経つとリセット
・GPUの使用制限 : GPUを使いすぎるとリセット(上限未公開)

また、スプレッドシート に対してのリクエスト数にも制限があります。

スプシの制限

  • ユーザーごとに100秒あたり100件のリクエスト
  • 1回のプログラムで設定できる最大値は1,000件まで
  • さらに1秒あたり10件まで

要は早い処理をするプログラムはやめてね〜ということですね。

スプシをpythonで操る初期設定

スプシをpythonで操作するには1番最初にしなければならない設定があります。

↓詳しい内容はこちらに記載していますのでご覧ください。↓

プログラムについて

本プログラムは3つのセクション(セル)に分かれています。

少し面倒くさいですが、前項に記載したGCとスプシの制限があるため3つのセクションに分けました。

上から順番に解説をすると、セクション1.はGCの90分ルールと12時間ルールのために用意しています。

その日初めてプログラムを実行するときなどに1度実行ボタンを押下しましょう。

セクション2.はイメージ画像までをスクレイピングします。

セクション2.の実行が終了したら不必要な行は削除することを推奨します。(スプシ制限回避のため)

また、その日初めてセクション2.のプログラムを実行する場合はこのようにスプシの認証を求められます。

指示に従って認証を実行するとセクション2.のプログラムが本実行されます。

セクション3.はスプシの制限にかからない限り実行をすれば勝手に起動して勝手に終了します。

使用方法

手順

  1. スプレッドシートkeyを入力
  2. メルカリで検索結果を絞る
  3. メルカリの検索結果URLをコピー
  4. プログラムに貼り付け
  5. プログラム起動

たった5つの作業でメルカリのデータを思いのままに・・・。

下準備

スプレッドシートはご自身で用意しても良いですが、シート名にメルカリと記入してください。

また、セルは上記の画像の通り、見出しとなる文字列を記載します。

重要なのはシート名と見出し名、見出しの場所です。
ファイル名は変更してもOKです。

用意するのが面倒な場合は、こちらからデータのコピーをしてください。

スプシのデータコピーは「ファイル」→「コピーを作成」です。

pythonとスプシの連携方法などは前述した「スプシをpythonで操る初期設定」を確認しましょう。

メルカリで検索結果を絞る

上記はキーワードを「ニンテンドー スイッチライト 本体」にしてカテゴリーや商品状態を絞っています。

できるだけお目当ての商品のみになるように検索条件を絞るのがコツです!

メルカリの検索結果URLをコピー

ある程度条件を絞ったらブラウザに表示されているURLをコピーします。

プログラムに貼り付け

検索ワードのブロックにある「url」の””(ダブルクォーテーション)内に貼り付けます。

貼り付けるURL

URLは下記のようになっています。

url = “https://www.mercari.com/jp/search/?sort_order=&keyword=検索条件&status_on_sale=1

この形を崩さないようにダブルクォーテーションとダブルクォーテーションの間にコピーしたURLを貼り付けましょう。

プログラム起動

実行ボタンを押下すると実行ボタンの周りがクルクルと回転し始めます。

最初の起動時はモジュールをインストールするので時間にすると1.2分ほど待つ必要がありますが、ある程度待っているとこうなります。

ここで入力されるのはタイトル、URL、価格、画像です。

GCの制限に抵触しないようにするための配慮ですが、ここで必要ではない行をを削除すれば次のプログラム起動時にさらに制限回避につながります。

前回のプログラムが終了したら2つ目のプログラムを起動します。

すでにモジュールやグーグルのログインは終わっているのですぐにこうなります。

ここで入力されるのは、状態、送料、画像です。

titleはタイトルをebayなど使用するときに英訳するときに使ってもらえるように用意しました。
備考は写真などを見て重量を入力したりするために用意しました。

使用上の注意点

スクレイピングはその性質上、アクセスしたサーバー側に負担をかけてしまいます。

また、サイトによってスクレイピングを禁止している場合もあります。

メルカリは後者において使用を禁止しています。

とはいえ、できないわけではないので今回のようなプログラムを作成しました。

使用する際は相手側に迷惑をかけないように最低限の使用に留めましょう。

仮に本プログラムを使用して何かしらの不具合や損失を被ったとしても、私は一切の責任を負いません。

ご自分の裁量で使用の判断をしてください。

まあ、これまで使用してアカウント凍結などを食らったことはありません。

データ配布

残念ながらこのデータは無料で提供できるものではありません。

メルカリは規約上はスクレイピング不可ですので、無料で配るとそれでだけ利用できる人が増えてしまうということなりますので。。。

メルカリ側のスクレイピング対策が強くなったらやだなーと。。。

ということで本プログラムは有料でお配りいたします。

[purchase_link id="1344″ text="購入" style="button" color="blue"]

ちなみに買い切りなので以降、追加料金はかかりません。

同じような仕組みをクラウドワークスなどで発注した場合は、¥5000は提示しないと誰もしてくれないと思います。

ptyhon初心者ならスクレイピングの勉強資料としても利用できるはずです。

データDL後

データをDLしていただけますと、拡張子が.ipynbのデータが1つ入っています。

このデータをGoogle Colab使用時に作成されたGoogleドライブに格納します。

もしくは、適当なコードエディタで開き、GCにコードをコピペしても使用することができます。

まとめ

メルカリのスクレイピングはいかがでしたか?

このプログラムを使用することによってあなたのリサーチ時間は飛躍的に削減されます。

誰でもできることを管理者がやっても意味がありません。

繰り返し作業はプログラムにやってもらいましょう!!

Posted by ゆき