标签: 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 ()
Run Code Online (Sandbox Code Playgroud)

结果:

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"
Run Code Online (Sandbox Code Playgroud)

题.如何获得没有其他属性的唯一链接?(只要 )

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

r rvest

2
推荐指数
1
解决办法
4405
查看次数

带有RVest的submit_form中的“错误:与STRSXP不兼容”

我搜索了stackoverflow和github,但是还没有找到解决方案。

session <- read_html("http://www.whitepages.com")
form1 <- html_form(session)[[1]]
form2 <- set_values(form1, who = "john smith")
submit_form(session, form)
Run Code Online (Sandbox Code Playgroud)

在提交表单行之后,我得到以下信息:

Submitting with '<unnamed>'
Error: not compatible with STRSXP
Run Code Online (Sandbox Code Playgroud)

我拼凑出这个错误通常是由于类型不匹配(例如,字符串和数字)引起的,但是我无法确定这可能发生在哪里。

任何帮助将不胜感激!

r web-scraping rvest

2
推荐指数
1
解决办法
2554
查看次数

Rvest无法识别CSS选择器

我正在尝试抓取此网站:

http://www.racingpost.com/greyhounds/result_home.sd#resultDay=2015-12-26&meetingId=18&isFullMeeting=true

通过rvestR中的包装。

不幸的是,似乎rvest无法通过CSS选择器识别节点。

例如,如果我尝试提取每个表的标题(坡度,奖赏,距离)中的信息,其CSS选择器为“ .black”,然后运行以下代码:

URL <- read_html("http://www.racingpost.com/greyhounds/result_home.sd#resultDay=2015-12-26&meetingId=18&isFullMeeting=true")
nodes<-html_nodes(URL, ".black") 
Run Code Online (Sandbox Code Playgroud)

节点显示为空列表,因此不会刮任何东西。

r web-scraping rvest

2
推荐指数
1
解决办法
2737
查看次数

rvest不提取自闭合的xml节点

试图解析这个xml文件:http: //data.fcc.gov/api/block/find ?latitude = 48.9905&longitude = 1222.2733&showall = false

rvest/ xml2接缝无法正确识别节点:

require(rvest) #which uses xml2 internally
doc <- read_xml("http://data.fcc.gov/api/block/find?latitude=48.9905&longitude=-122.2733&showall=false")
> doc
{xml_document}
<Response>
[1] <Block FIPS="530730102002091"/>
[2] <County FIPS="53073" name="Whatcom"/>
[3] <State FIPS="53" code="WA" name="Washington"/>
Run Code Online (Sandbox Code Playgroud)

试图获得节点我做了 - 导致错误(没有匹配)

doc %>% xml_node("County") # Error: No matches
Run Code Online (Sandbox Code Playgroud)

我也试过它read_htmlhttr::GET结合两者:read_htmlread_xml......任何想法

PS:示例来自此处:解析对查询的XML响应.我试图解决这个问题rvest

xml r web-scraping httr rvest

2
推荐指数
1
解决办法
240
查看次数

如何在rvest html_session中发帖?

如何在html会话中发布"内部"?

所以在我开了一个会话之后 a <- rvest::html_session(url)

我试过了:

library(httr)
POST(path, 
          add_headers(setNames(as.character(headers(a)), names(headers(a)))), 
          set_cookies(setNames(cookies(a)$value, cookies(a)$name)),
          body = list(...), 
          encode = "json")
Run Code Online (Sandbox Code Playgroud)

但这会处理我的请求,因为我没有登录.有什么建议吗?我正在寻找类似的东西POST(session, path, body, ...)

r web-scraping httr rvest

2
推荐指数
1
解决办法
1810
查看次数

使用R从网页中提取元描述

您好我正在尝试检索这些wepages元描述

从页面来源"

Data<-data.frame(Pages=c(
"http://boingboing.net/2016/06/16/spam-king-sanford-wallace.html", 
"http://boingboing.net/2016/06/16/omg-the-japanese-trump-commer.html",
"http://boingboing.net/2016/06/16/omar-mateen-posted-to-facebook.html"))
Run Code Online (Sandbox Code Playgroud)

期望的输出

Data$Meta_Description<-data.frame(Extracted=c(
"Sanford Wallace gets 2.5 years in prison for 27 million Facebook", 
"OMG, this Japanese Trump Commercial is everything",
"Omar Mateen posted to Facebook during Orlando mass shooting"))
Run Code Online (Sandbox Code Playgroud)

我试图用httr来完成这个任务但是我无法以所需的输出格式获取它或者从使用GET命令检索的内容中提取内容

library (httr)
resp<-GET ("http://boingboing.net/2016/06/16/spam-king-sanford-wallace.html")
str(resp)
List of 10
$ url        : chr "http://boingboing.net/2016/06/16/spam-king-sanford-wallace.html"
$ status_code: int 200
$ headers    :List of 22
..$ server                     : chr "Apache/2.2"
Run Code Online (Sandbox Code Playgroud)

我需要从源代码中提取的字段在此字符串之后

<meta itemprop="description" content="
Run Code Online (Sandbox Code Playgroud)

像这样

<meta itemprop="description" content="&#039;Spam King&#039; 
Sanford Wallace gets 2.5 years in prison for …
Run Code Online (Sandbox Code Playgroud)

r httr rvest

2
推荐指数
1
解决办法
1600
查看次数

向文本元素添加空格

有没有一种方法可以向每个包含文本的元素添加空格?对于此示例:

movie <- read_html("http://www.imdb.com/title/tt1490017/") 
cast <- html_nodes(movie, "#titleCast span.itemprop")
cast %>% html_structure()
[[1]]
<span.itemprop [itemprop]>
  {text}

[[2]]
<span.itemprop [itemprop]>
  {text}
Run Code Online (Sandbox Code Playgroud)

我想使用之前为每个文本元素添加尾随空格html_text()。我还有另一个用例,我想html_text()在文档层次结构中使用更高的级别。结果是将多个文本合并到一个向量元素中。这使得无法推断相应部分的开始和结束。

r rvest xml2

2
推荐指数
1
解决办法
444
查看次数

如何使用rvest获取html_table中的链接?

library("rvest")
url <- "myurl.com"
tables<- url %>%
      read_html() %>%
      html_nodes(xpath='//*[@id="pageContainer"]/table[1]') %>%
      html_table(fill = T)
tables[[1]]
Run Code Online (Sandbox Code Playgroud)

单元格的html内容是这样的

<td><a href="http://somelink.com" target="_blank">Click Here</a></td>
Run Code Online (Sandbox Code Playgroud)

但在scped html中,我只能得到,

点击这里

r rvest

2
推荐指数
1
解决办法
1520
查看次数

在R中抓取html表及其href链接

我正在尝试下载一个包含文本和链接的表。我可以成功下载带有链接文本“ Pass”的表。但是,我想捕获实际的href URL,而不是文本。

library(dplyr)
library(rvest)
library(XML)
library(httr)
library(stringr)

link <- "http://www.qimedical.com/resources/method-suitability/"

qi_webpage <- read_html(link)

qi_table <- html_nodes(qi_webpage, 'table')
qi <- html_table(qi_table, header = TRUE)[[1]]
qi <- qi[,-1]
Run Code Online (Sandbox Code Playgroud)

上面给出了一个不错的数据框。但是,当我希望将链接与之关联时,最后一列仅包含文本“ Pass”。我尝试使用以下内容添加链接,但它们与正确的行不对应:

qi_get <- GET("http://www.qimedical.com/resources/method-suitability/")
qi_html <- htmlParse(content(qi_get, as="text"))

qi.urls <- xpathSApply(qi_html, "//*/td[7]/a", xmlAttrs, "href")
qi.urls <- qi.urls[1,]

qi <- mutate(qi, "MSTLink" = (ifelse(qi$`Study Protocol(click to download certification)` == "Pass", (t(qi.urls)), "")))
Run Code Online (Sandbox Code Playgroud)

我对html,css等知之甚少,所以我不确定要正确完成此操作我缺少什么。

谢谢!!

html xpath r rvest

2
推荐指数
1
解决办法
1289
查看次数

html_attr"href"在rvest中返回NA

我的目标是使用网站提取与网站中特定css元素相关联的网址rvest.在查看其他几个类似的问题后,我想我需要将该html_attr函数与'href'参数一起使用.使用我目前的脚本,这只返回NA值,虽然我希望它返回URL.

输入以构建变量

library(rvest)

my_url <- "http://www.sherdog.com/events/UFC-Fight-Night-111-Holm-vs-Correia-58241"

my_read_url <- read_html(my_url)

my_nodes <- html_nodes(my_read_url, ".fighter_result_data a span , .right_side a span , .left_side a span")
Run Code Online (Sandbox Code Playgroud)

输入以查看是否my_nodes来自运动员的名字.

html_text(my_nodes)
Run Code Online (Sandbox Code Playgroud)

输出显示my_nodes正在选择我想要的css元素.

[1] "Holly Holm"          "Bethe Correia"       "Marcin Tybura"      
 [4] "Andrei Arlovski"     "Colby Covington"     "Dong Hyun Kim"      
 [7] "Rafael dos Anjos"    "Tarec Saffiedine"    "Jon Tuck"           
[10] "Takanori Gomi"       "Walt Harris"         "Cyril Asker"        
[13] "Alex Caceres"        "Rolando Dy"          "Yuta Sasaki"        
[16] "Justin Scoggins"     "Jingliang Li" …
Run Code Online (Sandbox Code Playgroud)

html css r web-scraping rvest

2
推荐指数
1
解决办法
2754
查看次数

标签 统计

r ×10

rvest ×10

web-scraping ×5

httr ×3

html ×2

css ×1

xml ×1

xml2 ×1

xpath ×1