イメージ クローラーを構築する方法 – 完全ガイド
公開: 2023-01-10Web から画像をスクレイピングするのは、テキスト コンテンツをスクレイピングするよりもはるかに困難です。 この背後にある理由は、Web ページのコンテンツをふるいにかけ、特に画像のみを抽出する必要があるという事実です。 これに加えて、コンテキストのない画像を使用しても、あまり役に立たない可能性があります.
これらの画像が自動タグ付けされるようにするには、画像または画像の上または下に関連付けられているテキスト コンテンツを抽出する必要がある場合もあります。 もう 1 つのポイントは、再利用のためにテキスト データを集約、再書き込み、または分解できることです。 一方、画像は著作権の問題により再利用が制限される場合があります。 これらは、画像をスクレイピングするときに直面する可能性のある課題のほんの一部です。 しかし、その前に、画像をスクレイピングすることの価値と、ウェブ上で生活する今日のデータ駆動型社会において、それがどれほど重要であるかを見てみましょう.

図: Google の逆画像検索ポータル
近年、画像のスクレイピングまたはクロールが急成長しており、Google でさえ、クロールしたデータに基づいて結果を表示する逆画像検索オプションを提供しています。 そうするには
画像が正しいテキストに関連付けられていることを確認してください。また、開発者および Web ページ作成者向けのガイドラインもいくつかリリースしています。

図: Google 画像検索ポータルでの画像の検索
スクレイピングされた画像の使用
企業は、さまざまなユースケースで Web をクロールして画像をスクレイピングすることを希望する場合があります。 これらは主に 2 つのセットに分けることができます - Raw 画像の使用。 画像を使用してモデルまたはチャートを構築し、より成熟した製品を作成します。 一般的な使用法には次のようなものがあります。
ML モデルのトレーニング
画像認識には多くの研究が行われています。これは、何千もの画像でモデルをトレーニングすることによって行われます。 これの最も単純な例は、ML アルゴリズムが何千もの猫と犬の画像でトレーニングされた後、98.7% の精度で犬と猫の画像を正しく識別することができた実験です。
電子商取引の画像
画像の最大の宝庫の 1 つは e コマースです。 小規模な Web サイトでは、カタログに追加される製品の種類を判断するために、大規模な Web サイトから画像をスクレイピングすることがよくあります。 E コマースの画像は、市場調査にも使用できます。たとえば、Amazon で最も売れている T シャツの画像をスクレイピングすると、黒い T シャツの需要が最も高いことがわかります。
テキスト/ビデオ コンテンツの作成
以前はほとんどの人がテキスト データから情報を取得していましたが、今日、私たちが消費するデータは、テキスト、オーディオ、ビデオ、短いビデオなど、さまざまな形式で提供されます。 このコンテンツの多くには画像が含まれています。その一部は外部ソースからのものであり、参照が言及されています。 反対に、このコンテンツは、さらに下流で使用するために画像用にスクレイピングすることもできます。
ミーム
ミームは面白いコンテンツを含む画像で、しばしば口コミで広まり、インターネットを席巻します。 近年、企業がミーム ライターを雇ったり、ミームを使用して Web 上の視聴者とつながるマーケティング チームを採用したりしています。 ミームと最新の画像をスクレイピングすることは、ミームの作成者が同じテンプレートを使用して新しいアイデアやバリエーションを思いつくのに役立つことがよくあります。
特定の個人、イベントなどの画像を検索する
多くの場合、新しいコンテンツや情報コンテンツには画像が必要です。 たとえば、マザー テレサに関する記事を公開する場合、マザー テレサの画像を追加する可能性があります。 そんなイメージが湧きやすいかもしれません。 しかし、毎月何千もの記事を発行し、著作権の対象とならない画像を記事で使用する必要がある出版社の場合は、深刻な画像スクレイピングが必要になります。

Web から画像をスクレイピングする際の課題
セットアップ
Web から画像やデータをスクレイピングする際の大きなハードルの 1 つは、それを行うのに十分な能力を持つ技術チームを持つことです。 2 番目は、インフラストラクチャのセットアップです。 ほとんどの企業が複数のソースからリアルタイムでデータを取得する必要があることを考えると、通常、データ スクレイピングのセットアップはクラウドに展開されます。 これが意味することは、チームはそれをクラウド上にセットアップし、長期的に維持するためのノウハウを持っている必要があるということです. メンテナンスには、バグや破損の修正、スケールアップ時のコストの抑制が含まれます。
スクレイピング対策と法的ハードル
データを取得する Web サイトの robot.txt ファイルを取得する必要があります。 これにより、その Web サイトによって設定されたクロール ルールに従うことが保証されます。 さらに、ログイン ページの外にある画像や、著作権や再利用に関するポリシーが具体的に言及されている画像も追跡する必要があります。 ヨーロッパの GDPR やカリフォルニア州の CCPA などの地域固有の法律により、状況がさらに複雑になる可能性があります。
多様で変化し続ける Web サイトのレイアウト
Web サイトの所有者は、UI をすばやくアップグレードして、Web ページを顧客にとってより魅力的なものにします。 これが意味するのは、ウェブサイトを運営する新しい技術であり、スクレイピングがより複雑になっているということです。 定期的な更新は、UI 更新をプッシュするたびにコードを変更する必要があることも意味します。これは、スクレイピングされた新しい画像がデータベースに追加されていないことがわかった場合にのみ通知される場合があります。
不良または使用できない画像
やみくもに画像をスクレイピングすると、品質の問題が発生する可能性があります。 これは、解像度、可視性、および画像自体の一致に関するものである可能性があります。 たとえば、バットマンを検索すると、映画やドラマでそのキャラクターを演じた俳優の画像が大量に表示される場合があります。 研究やビジネス用にきれいな画像を設定するには、正しいフィルターを使用していることを確認する必要があります。
画像を含む Web サイトの読み込みが遅い場合がある
文字は軽く、画像は重い。 多数の画像を含む Web ページを開くと、画像の読み込みに時間がかかる場合があります。 一度に同じ Web サイトからあまりにも多くの画像をスクレイピングしている場合、これは困難になる可能性があります。 画像が完全にロードされていることを確認せずに画像をダウンロードすると、画像の品質が低下したり、空白の画像がダウンロードされたりする可能性があります。
DIY ソリューション
少しオンラインで調べてみると、かなりの数の DIY のオプションが得られます。 これらの中で最も人気のあるものは次のとおりです。
- BeautifulSoup などのライブラリを使用して、Python などの言語でコードを記述します。 ただし、これはスクレイピング要件が小さい場合にのみ機能します。
- 無料と有料の両方のオプションがある UI ベースのソフトウェアを使用する。 これらには通常、無料版の制限がたくさんあります。 また、ビジネス チームや製品チームにそのようなソリューションを使用して画像をスクレイピングする場合の学習曲線も存在します。
- スクリーン キャプチャ ベースのイメージ スクレイピング ソリューションも存在します。このソリューションでは、マウスを使用して Web ページから必要なイメージを指定すると、サービスが類似の Web ページからイメージをスクレイピングします。 これらは常に最もクリーンなデータを提供するとは限らず、限られた数以上の画像をスクレイピングするには料金を支払う必要があります.
簡単に言えば、3 つの DIY ソリューションのいずれも、企業向けの Web のクロールと画像のスクレイピングに関して言及されたすべての課題を処理できるものではありません。
DaaS ソリューションを使用する利点
1 回限りの問題ステートメントやペット プロジェクトのために Web からデータをスクレイピングすることは、数行の Python コードで実行できますが、ライブ データ フィードを取得するためのエンタープライズ レベルのソリューションをセットアップするのは簡単な作業ではありません。 何百もの Web サイトから何千もの画像が必要な場合は、さらに困難になります。 これが、PromptCloud が、フォーチュン 500 企業だけでなく、ショップを立ち上げたばかりのスタートアップの両方で使用できるカスタム イメージ スクレイピング ソリューションを提供する理由です。

図: PromptCloud がビジネス要件に合わせて画像をスクレイピングする手順
簡単な 3 段階のプロセスで、画像をスクレイピングする必要がある Web サイトと Web ページをお知らせください。 特定の検索語に関連する画像をスクレイピングすることもできます。 提供する必要があるその他の情報は、クロールの頻度、画像の真上または真下のテキストをキャプチャする場合、スクレイピングされた画像を保存する必要がある場所、およびそれにアクセスする方法です。 画像を S3 または DropBox にドロップするか、API を介してクエリを実行できます。
要件が整ったら、複数の Web サイトから画像をスクレイピングするようにクローラーをセットアップします。 クラウドのセットアップ、構成、および合法性を担当します。 セットアップが完了したら、ライブ システムがデータを指定の配信方法にプッシュする前に、いくつかのサンプル データを取得して検証します。
この後、画像スクレイピング システムを監視し、クローラーを更新して新しい Web サイトと Web ページ、および Web ページの変更を処理することで、破損をプラグインします。 そのすべての最良の部分は、消費したデータ量に対してのみ支払うことです. したがって、1 か月に 10 の Web サイトから 100 枚の画像をスクレイピングした場合、料金はその分だけになります。 そして翌月には、1000 の Web サイトから 10,000 枚の画像をスクレイピングして、それに応じて支払うことができます。 これにより、当社のサービスは、必要なデータ量に関係なく、すべての人が使用できる真のクラウドベースの DaaS ソリューションであることが保証されます。
