2

私はWebクロールの初心者です。たとえば、次のページのページをクロールしようとしています: http ://shopping.yahoo.com/search;_ylt=AkzLiLhD9_ulIJy.SYsw9T0bFt0A?p=video&did=0

Amazon.comやantonline.comなどの検索結果を抽出する必要があります。これを達成するのに役立ついくつかのテクニック、ツール、swに名前を付けるのに役立つ体はありますか?

編集:私はJavaで作業する必要があります。

4

3 に答える 3

2

URLからファイルを読み込みます。すべてマークアップになります。

正規表現を適用して、ページにあるパターンを使用してデータを抽出します。

マークアップを調べてデータのパターンを引き出し、正規表現を記述してデータを抽出します。ここでは、各アイテムのタイトルと価格が必要になると想定しています。したがって、たとえば、サンプルファイルでは、すべてのタイトルがでラップされて<li class ='hproduct'>おり、すべての価格がの中にあることがわかります<p class='price'>。それらのdivの内容をこの順序で見つける正規表現を記述します。

于 2012-09-29T21:35:17.160 に答える
2

基本的には、ブラウザのdevtools(ChromeまたはFirebug)でページを検査するという考え方です。特別なIDまたはクラスを見つけてください。あなたのページには、これを使用<ul class='hproducts'>するリストがあります。<li class='hproduct'>

次に、電話をかけて応答を取得し、解析します。(Google for DOM、SAX、XPath ...)これは言語とライブラリで大きく異なります。たとえば、Javaには、html(この場合はxmlとは少し異なります)をフェッチして便利な方法で解析できるJSoupライブラリがあります。

または彼らのAPIのためのより良いグーグル;)

于 2012-09-29T21:29:52.143 に答える
1

SeleniumWebDriverはそれを行うことができます:

http://seleniumhq.org/projects/webdriver/

1年前にrubyでの抽出に使用したことがありますが、Javaでも使用できます。

Watirも見てください:(http://watir.com)

記事のサンプル:(Rubyを使用)

http://www.layeredthoughts.com/automation/how-to-write-your-first-ruby-web-bot-in-watir-scraping-weather-com

HTMLUnitライブラリを探すこともできます。

Webページのhtml要素をスクラップ(抽出)するためのHTMLUnitの例を以下に示します。

http://htmlunit.sourceforge.net/gettingStarted.html

于 2012-09-29T21:33:36.510 に答える