全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1365 6
2019-12-02
如下图所示,想要读取两个<br/>之间的文本内容

以下为前期准备的R程序,以及已经读取的内容:

install.packages("rvest")


install.packages("stringr")
install.packages("XML")
install.packages("xml2")
library(xml2)
library(rvest)
library(XML)
library(stringr)
url <- "https://lexjansen.com/cgi-bin/xsl_transform.php?x=pharmasug-cn2018#PharmaSUG-CN2018-st008"
web=read_html(url)
html_nodes(web,".stream span")%>%html_text
html_nodes(web,".paper a[href*='lexjansen']")%>%html_text
html_nodes(web,".papera[href*='lexjansen']")%>%html_attr("href")



用XPATH读取的结果如下:


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2019-12-2 20:25:23
((web %>% html_nodes('#rightpanel > div:nth-child(n+11)')%>%
          html_text())[1:68] %>%
  str_split('\n|Pages:|Size:',simplify = T))[,1:4] %>%
  as.data.frame() %>%
  dplyr::rename(title=V1, author=V2, page=V3, size=V4)%>%
  DT::datatable()

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-12-3 10:54:04
zhou1_20 发表于 2019-12-2 20:25
((web %>% html_nodes('#rightpanel > div:nth-child(n+11)')%>%
          html_text())[1:68] %>%
  st ...
太厉害了。。。谢谢大神!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-12-3 14:16:01
zhou1_20 发表于 2019-12-2 20:25
((web %>% html_nodes('#rightpanel > div:nth-child(n+11)')%>%
          html_text())[1:68] %>%
  st ...
您好,程序第一句web %>% html_nodes('#rightpanel > div:nth-child(n+11)'中的定位方式不是特别理解,为什么要写成“nth-child(n+11)”?谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-12-3 14:34:52
春运专用小马扎 发表于 2019-12-3 14:16
您好,程序第一句web %>% html_nodes('#rightpanel > div:nth-child(n+11)'中的定位方式不是特别理解,为 ...
#rightpanel 下的子节点从第11个开始取步长为1,即1n+11. 一般 an+b表示从第b个节点开始步长为2的所有节点
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-12-3 15:18:18
zhou1_20 发表于 2019-12-3 14:34
#rightpanel 下的子节点从第11个开始取步长为1,即1n+11. 一般 an+b表示从第b个节点开始步长为2的所有节点 ...
哦~~明白了,再次感谢您!请问您有没有这方面的相关书籍或资料推荐?非常感谢。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群