1

ヒット数のグーグル検索をスクレイプしたい:

require(XML)

input <- "projektgebiet" 
url <- paste("https://www.google.at/search?q=",
             input,
             "&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a",
             sep = "")

CAINFO = paste(system.file(package="RCurl"), "/CurlSSL/ca-bundle.crt", sep = "")
script <- getURL(url, followlocation = TRUE, cainfo = CAINFO)
doc <- htmlParse(script)

xmlValue(getNodeSet(doc, "//td")[[6]])

私は近くにいます-唯一の問題は、ノード内の2つの値を個別にアドレス指定する方法がわからないことです-実際には数値が必要です..(上記の例では、2つの値が連結されています)

インデックス作成を回避する方法[[6]]も知りたいのですが、他の特性でノードをアドレス指定できるかどうかはわかりません。

ヘルプやポインタをいただければ幸いです。

ps:もちろん、正規表現を使用することもできますが、これは最もエレガントな方法ではないと思います。

4

1 に答える 1

1

要素の1つに属性が[[6]] あることに気付くことで、を回避できます。以下は、2つの子ノードの内容を、連結せずに別々に返します。divid

xpathSApply(doc, "//div[@id='subform_ctrl']/*", xmlValue)
# [1] "Erweiterte Suche"            "Ungefähr 245.000 Ergebnisse"
于 2012-04-05T05:38:23.153 に答える