使用R在搜索功能中按linkname下载URL

问题描述 投票:0回答:1

我想通过一些参数从this页面抓取每个月的信息,下载所有返回的文章并查找一些信息。

使用css选择器进行刮擦可以正常工作,例如获取文章名称:

library(rvest)

browseURL("http://www.sueddeutsche.de/news")

#headings Jan 2015

url_parsed1 <- read_html("http://www.sueddeutsche.de/news?search=Fl%C3%BCchtlinge&sort=date&dep%5B%5D=politik&typ%5B%5D=article&sys%5B%5D=sz&catsz%5B%5D=alles&time=2015-01-01T00%3A00%2F2015-12-31T23%3A59&startDate=01.01.2015&endDate=31.01.2015")
headings_nodes1 <- html_nodes(url_parsed1, css = ".entrylist__title")
headings1 <- html_text(headings_nodes1)
headings1 <- str_replace_all(headings1, "\\n|\\t|\\r", "") %>% str_trim()
head(headings1)
headings1

但现在我想为搜索返回的每个entrylist_link下载文章(例如here)。

我怎样才能做到这一点?我遵循建议here,因为URL不规则,并且最后每篇文章都有不同的数字,但它不起作用。

不知怎的,我无法通过href信息获取entrylist_link信息。

我认为将所有链接放在一个向量中是最大的问题

有人可以给我一些关于如何让它工作的建议吗?预先感谢您的任何帮助。

html css r web-scraping
1个回答
1
投票

如果右键单击页面并单击“检查”(我使用的是Chrome Web浏览器),您可以查看基础xml的更多详细信息。我能够拉下标题下的所有链接:

library(rvest)

browseURL("http://www.sueddeutsche.de/news")
url_parsed1 <- read_html("http://www.sueddeutsche.de/news?search=Fl%C3%BCchtlinge&sort=date&dep%5B%5D=politik&typ%5B%5D=article&sys%5B%5D=sz&catsz%5B%5D=alles&time=2015-01-01T00%3A00%2F2015-12-31T23%3A59&startDate=01.01.2015&endDate=31.01.2015")

headings_nodes1 <- html_nodes(url_parsed1, ".entrylist__link, a")
html_links <- html_attr(headings_nodes1, "href")
© www.soinside.com 2019 - 2024. All rights reserved.