スクレイピング禁止のメルカリをスクレイピングする【準備編】

スクレイピング禁止のメルカリをスクレイピングする【準備編】 プログラミング

メルカリには、APIが用意されていません。
そのため、メルカリのデータを欲しいときはどうすればいいのでしょうか?

スクレイピングしましょう。
ということで、メルカリをスクレイピングしていきます。

ただし、今回は実際にスクレイピングをしません。
そのための準備を行います。
そして、プログラムよりもむしろ重要なことを書いています。

本記事の内容

  • 【必須】Webスクレイピングに関する考え方
  • メルカリの規約を確認する
  • メルカリのスクレイピング仕様(考え方)
  • メルカリをスクレイピングするための準備

それでは、上記に沿って解説していきます。

【必須】Webスクレイピングに関する考え方

ここだけは読み飛ばないでください。
スクレイピングを行う上で、絶対に無視してはいけない部分です。

スクレイピングに関して、あーだこーだと言う人もいます。
しかし、断言しておきます。

「スクレイピングは違法ではない」

上記の通り、スクレイピング自体は法律違反でも何でもありません。
だから、堂々とやればいいのです。

「素性のわからない人間の言うことなんて信用できない」と思う人もいるでしょう。
そのような人は、次の記事をご覧ください。

タイトルにもあるように、国がスクレイピングをやっているのです。
これで、安心できたでしょうかね。

いやいや、ここで安心してはいけません。
述べた通り、スクレイピングは違法ではありません。

しかし、スクレイピングにはリスクが存在しています。
そのリスクについては、次の記事をご覧ください。

上記は、個人情報の取扱いに関する内容となります。
簡単に言うと、大々的に組織的なことはしなければいいだけです。

あと、もう一つ触れておくべきリスクは大量アクセスですね。
短時間に大量のアクセスを行うと、スクレイピング先のサイトに被害を与える可能性があります。

このことに関しては、一つの基準を述べておきます。
「人間が行うような速度でアクセスする」
この基準を守れば、基本的には問題にはなりません。

実際、問題があればすぐにIP単位でアクセス禁止されてしまいます。
そのため、相手方サーバをダウンさせるなどはあり得ません。

以上は、スクレイピングを行う上で絶対に欠かせない知識です。
次に、メルカリの規約を確認しましょう。

メルカリの規約を確認する

スクレイピングが法律違反ではないことを確認済ですね。
でも、規約の確認はしておきましょう。

その前に、まずログインした状態でのスクレイピングは止めましょう。
個人的には、ログイン状態でのスクレイピングはおススメしません。

基本的には、未ログインの状態で公開されているデータのスクレイピングだけとします。
もし、スクレイピングをしていることを相手側(今回はメルカリ)にバレたらヤバイです。

ヤバイとは、アカウント停止・削除になることも十分にあり得ます。
個人情報絡みの問題にもなりかねません。
ログインした状態でのスクレイピングは、できる限りで避けるべきです。

では、メルカリの規約の確認をしましょう。
と言っても、たくさんあるのでスクレイピングに関する部分を対象にします。

https://www.mercari.com/jp/help_center/article/900/
「メルカリ事務局で不適切と判断される行為」にスクレイピングついての記載があります。

・ 弊社が提供するインターフェイスとは別の手法を用いてサービスにアクセスすること

プログラムによるスクレイピングは、「別の手法」となります。
他にも細かいことを言えば、以下もスクレイピングには関係してくるでしょう。

・弊社が提供するサービスに繋がっているサーバーやネットワークに対して悪影響を及ぼすこと
・弊社のサービス運営を妨げること
・弊社の事前の書面による許可なく、弊社のサービス外のところで、商業目的で、弊社が提供するあらゆるサービス、コンテンツ、情報、システム、機能、プログラムなどの全部または一部を利用すること

このように規約には、メルカリの望むことが書かれています。
ただ、これは利用規約に過ぎません。

利用規約とは、法律でも何でもありません。
一民間企業が自由・勝手に作ったモノです。

正直、そのような利用規約なんて無視してOK。
ただし、それがもとでアカウント停止・削除されても文句は言えません。

念のために書きますが、利用規約以前の法律に関しては遵守してください。
著作権、個人情報、業務妨害(大量アクセス)などに関する法を遵守するのは大前提です。

以上、メルカリの規約を確認しました。
次は、メルカリのサイトをスクレイピングする上での考え方について説明します。

メルカリのスクレイピング仕様(考え方)

まず、メルカリをスクレイピングする難易度について。
難易度は、中程度です。

Instagramやtwitterほどは、難しくはありません。

ただし、上記評価は今後変わるかもしれません。
メルカリに関しては、まだ一部しか調査はしていませんので。

とりあえず、メルカリのスクレイピング難易度がわかりました。
難易度がわかると、それに即した対応を考えることができます。

メルカリは中程度以上であるため、普通にスクレイピングはできません。
普通にスクレイピングできないとは、プログラム単体ではスクレイピングできないという意味です。

ブラウザの力が必要となります。
プログラムからブラウザを操作して、スクレイピングする形になるということです。

プログラムからブラウザを操作するためには、Seleniumが必要となります。
Seleniumに関しては、次の記事で解説しています。

このSeleniumを使って、メルカリのページにアクセスします。
その際に取得できるページのソース(htmlタグ込み)をBeautiflSoup4でスクレイピングします。

簡単な難易度のサイトであれば、BeautiflSoup4だけでスクレイピングが可能です。
しかし、難易度が高くなるとSeleniumとBeautiflSoup4の合わせ技となります。

もちろん、Selenium単体でもスクレイピング(情報を抽出)は可能です。
ただ、BeautiflSoup4の方が情報抽出(タグ要素の操作)を簡単にできます。
適材適所の考え方でプログラムを組むと効率的だと考えています。

以上、メルカリのスクレイピング仕様(考え方)となります。
最後に、メルカリをスクレイピングするための準備をしましょう。

メルカリをスクレイピングするための準備

利用する言語は、Pythonです。
そして、必要なライブラリは以下。

  • Selenium
  • BeautifulSoup4
  • lxml

下記で説明します。

Selenium

Windowsに関しては、次の記事を参考にしてください。

もちろん、Linuxを利用することも可能です。
Linux(Ubuntu)の場合は、次の記事を参考にしてください。

BeautifulSoup4

インストールする上で、特に注意すべきところはありません。
単純に次のコマンドを実行するだけで、インストールできます。

pip install beautifulsoup4

lxml

BeautifulSoup4と合わせて利用します。
インストールは以下のコマンドで可能です。

pip install lxml

まとめ

メルカリをスクレイピングするための準備は、以上で終わりです。
今後は、今回に整えた環境でメルカリをスクレイピングしていきます。

近日公開予定です。

追記 2021年2月4日
手始めにカテゴリー一覧を取得しました。
想定より、スクレイピングの対策をしていることが判明。

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