R で Web ページのコンテンツを読み取って解析するにはどうすればよいですか
-
12-09-2019 - |
質問
URL の内容を読みたいのですが (例: http://www.haaretz.com/)Rで。どうすればできるのか気になります
解決
それは本当に厄介ですので、あなたは、そのページをどのように処理するか、
本当にわかりません。我々はhref="https://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags"> の中で再学びましたそれは、HTMLに正規表現を行うには良いアイデアではありませんので、あなたは間違いなくXMLパッケージでこれを解析することになるでしょう。
ここであなたが始めるために例を示します。
require(RCurl)
require(XML)
webpage <- getURL("http://www.haaretz.com/")
webpage <- readLines(tc <- textConnection(webpage)); close(tc)
pagetree <- htmlTreeParse(webpage, error=function(...){}, useInternalNodes = TRUE)
# parse the tree by tables
x <- xpathSApply(pagetree, "//*/table", xmlValue)
# do some clean up with regular expressions
x <- unlist(strsplit(x, "\n"))
x <- gsub("\t","",x)
x <- sub("^[[:space:]]*(.*?)[[:space:]]*$", "\\1", x, perl=TRUE)
x <- x[!(x %in% c("", "|"))]
この(いくつかのjavascriptと一緒に)ほとんどがちょうどWebページのテキストの文字ベクトルになります:
> head(x)
[1] "Subscribe to Print Edition" "Fri., December 04, 2009 Kislev 17, 5770" "Israel Time:Â 16:48Â (EST+7)"
[4] "Â Â Make Haaretz your homepage" "/*check the search form*/" "function chkSearch()"
他のヒント
最善の策は XML パッケージかもしれません -- たとえばこれを参照してください 前の質問.
私はあなたがR.を求め知っているしかし、おそらくのpython + beautifullsoupはここに前方の方法ですか?そして、Rとあなたの分析はあなたがbeautifullsoupで画面を掻き取っているのですか?
所属していません StackOverflow