amazonとe-bayの商品価格を比較できるサイトを作りたいです。これらのうちどれがより効果的で、その理由は何ですか? 私はBeautifulSoupにはある程度精通していますが、 Scrapy のクローラーにはあまり詳しくありません。
9 に答える
Scrapy is a Web-spider or web scraper framework, You give Scrapy a root URL to start crawling, then you can specify constraints on how many (number of) URLs you want to crawl and fetch,etc. It is a complete framework for web-scraping or crawling.
While
BeautifulSoup is a parsing library which also does a pretty good job of fetching contents from URL and allows you to parse certain parts of them without any hassle. It only fetches the contents of the URL that you give and then stops. It does not crawl unless you manually put it inside an infinite loop with certain criteria.
In simple words, with Beautiful Soup you can build something similar to Scrapy. Beautiful Soup is a library while Scrapy is a complete framework.
どちらも良いと思います...現在、両方を使用するプロジェクトを行っています。まず、scrapy を使用してすべてのページをスクラップし、パイプラインを使用して mongodb コレクションに保存し、ページに存在する画像もダウンロードします。その後、BeautifulSoup4 を使用して、属性値を変更し、いくつかの特別なタグを取得する必要がある pos 処理を行います。
必要な製品のページがわからない場合は、クローラーを使用して、明示的な for ループを作成せずに製品を検索するすべての amazon/ebay Web サイトを実行できるため、優れたツールがスクレイピーになります。
スクレイピーのドキュメントを見てください。使い方はとても簡単です。
私が行う方法は、スクレイピーではなく eBay/Amazon API を使用してから、BeautifulSoup を使用して結果を解析することです。
API は、scrapy クローラーから取得したのと同じデータを取得する公式の方法を提供します。ID を隠したり、プロキシをいじったりすることを心配する必要はありません。
Beautifulsoup は Web スクレイピングの小さなライブラリです。それはあなたの仕事をしますが、時にはあなたのニーズを満たさないことがあります.つまり、大量のデータでWebサイトをスクレイピングすると、この場合beautifulsoupは失敗します.
この場合、完全なスクレイピング フレームワークである Scrapy を使用する必要があります。また、scrapy はデータベース (あらゆる種類のデータベース) をサポートしているため、他の Web スクレイピング ライブラリよりもはるかに優れています。