我是初学者。
我用rvest创建了一个用于网络抓取的小代码。
我发现了一个非常方便的代码%>% html_node ()%>% html_text ()%>% as.numeric ()
,但我无法正确更改用于抓取图像网址的代码。
我的网页抓取网址代码:
UrlPage <- html ("http://eyeonhousing.org/2012/11/gdp-growth-in-the-third-quarter-improved-but-still-slow/")
img <- UrlPage%>% html_node (". wp-image-5984")%>% html_attrs ()
结果:
class "Aligncenter size-full wp-image-5984" `enter code here`title "Blog gdp 2012_10_1" alt '" src "Http://eyeonhousing.files.wordpress.com/2012/11/blog-gdp-2012_10_1.jpg" height "337" width "450"
问题。如何获得没有其他属性的唯一链接? (仅)
请帮我找一个解决方案。谢谢!
答案 0 :(得分:5)
您需要指定要提取的属性作为html_attr的参数。此外,您可能希望使CSS选择器(html_node的参数)更具体。这是我的代码:
library(rvest)
UrlPage <- html ("http://eyeonhousing.org/2012/11/gdp-growth-in-the-third-quarter-improved-but-still-slow/")
ImgNode <- UrlPage %>% html_node("img.wp-image-5984")
link <- html_attr(ImgNode, "src")
链接变量现在包含URL。
您可以在这里找到适合css选择器的参考: this answer
此外,rvest文档还有一些关于如何使用其功能的好例子: http://www.w3schools.com/cssref/css_selectors.asp
答案 1 :(得分:0)
klib是对的。刚刚将html(已弃用)更新为read_html并添加了下载命令。
library(rvest)
myurl <- read_html ("http://eyeonhousing.org/2012/11/gdp-growth-in-the-third-quarter-improved-but-still-slow/")
mynode <- myurl %>% html_node("img.wp-image-5984")
link <- html_attr(mynode, "src")
download.file(url = link,destfile = "test.jpg")