网络抓取图像

时间:2015-06-07 12:22:28

标签: r rvest

我是初学者。

我用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"

问题。如何获得没有其他属性的唯一链接? (仅)

请帮我找一个解决方案。谢谢!

2 个答案:

答案 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")