私はウェブスクレイピングにはまったく新しく、Rを使用してウェブサイトのソースコード/ htmlの情報にアクセスするスクレーパーを構築しようとしています。Rを使用してウェブサイトのソースコード/ htmlから情報をスクラップするにはどうすればよいですか?
具体的には、(数字の)ウェブサイトs)のIDに特定のテキスト( "google_ads_iframe")があります。 IDは常にこれより長くなるので、ワイルドカードを使用する必要があると思います。
私はいくつかのオプションを試しましたが(下記参照)、これまでのところ何も働いていません。
1方法:
doc <- htmlTreeParse("http://www.funda.nl/")
data <- xpathSApply(doc, "//div[contains(@id, 'google_ads_iframe')]", xmlValue, trim = TRUE)
エラーメッセージ読み取り:
Error in UseMethod("xpathApply") :
no applicable method for 'xpathApply' applied to an object of class "XMLDocumentContent"
2方法:空のリストとして
scrapestuff <- scrape(url = "http://www.funda.nl/", parse = T, headers = T)
x <- xpathSApply(scrapestuff[[1]],"//div[contains(@class, 'google_ads_iframe')]",xmlValue)
X戻ります。
3方法:
scrapestuff <- read_html("http://www.funda.nl/")
hh <- htmlParse(scrapestuff, asText=T)
x <- xpathSApply(hh,"//div[contains(@id, 'google_ads_iframe')]",xmlValue)
ここでも、Xは、空のリストとして返されます。
私が間違っていることを理解できないので、どんな助けも本当に素晴らしいでしょう!
機能のパッケージは何ですか? – nya
テキスト中の出現回数を数える簡単な方法は、scrapestuffが文字である可能性がある場合は、 'sum(stringr :: str_count(scrapestuff、" google_ads_iframe "))'を使用することです。 [ここ](http://stackoverflow.com/a/15356666/5967807)をチェックしてください。 – nya
実際には、HTML/XMLの場合、HTML/XMLの出現回数を数える簡単な方法は、例えば 'xml_find_first(pg、" count(.// div [contains(@class、 'featured')] ) ")' – hrbrmstr