将网页抓取的xml文件的正确部分放入R

时间:2018-11-18 21:53:21

标签: r web-scraping rvest

我正在尝试使用R中的Rvest包来抓取Google搜索返回的第一个网站的网址。

我似乎能够将URL转换为XML文件,但是我无法将XML文件的正确部分转换为数据框。

我使用了下面的代码。

url <- 'https://www.google.co.nz/search?rlz=1C1GCEB_enNZ790NZ790&ei=P4jsW6fbL4_RrQHd_K3wBw&q=auckland+university+of+technology+lifespan+development+and+communication+heal504&oq=auckland+university+of+technology+lifespan+development+and+communication+heal504&gs_l=psy-ab.3...20931.45570..45696...3.0..2.284.15672.0j63j18......0....1..gws-wiz.......0j0i71j35i39j0i67j0i131j0i131i67j0i20i263j0i13j0i22i10i30j0i22i30j33i21j33i160j33i22i29i30j33i10.xTnG49NmCBs'
googleurl <- read_html(url)
address <- html_nodes(googleurl,'.r')
address <- html_text(address)
urlname <- data.frame(address)

当我在R中打开XML文件时,可以看到URL,如所附的图片所示。但是,当我使用html_text将其传输到数据帧时,相关的URL似乎丢失了。

Screenshot image

1 个答案:

答案 0 :(得分:0)

html_text()返回元素的文本,您需要选择a标签以获取URL并使用html_attr()

address <- html_nodes(googleurl,'.r>a')
address <- html_attr(address, "href")