Возможное решение:
Используя ваш пример, я бы изменил селектор для объединения, используя комбайнатор-потомок , id с атрибут = значение селектор.Это будет предназначаться для закладки whitepaper по идентификатору и дочерней ссылке по href
значению атрибута;использование $ заканчивается на операторе для получения pdf.
library(rvest)
library(magrittr)
url <- "https://icobench.com/ico/hygh"
pdf_link <- read_html(url) %>% html_node(., "#whitepaper [href$=pdf]") %>% html_attr(., "href")
Опция Faster?
Вы также можете выбрать целевой тег object
и его data
attribute
pdf_link <- read_html(url) %>% html_node(., "#whitepaper object") %>% html_attr(., "data")
Узнайте, какие страницы подходят для целей.
Последний, вероятно, быстрее и, кажется, используется на нескольких сайтах, которые я проверял.
Решение для всех icos:
Вы можете поместить это в функцию, которая получает URL в качестве входного (URL каждого ico);функция возвращает pdf-URL или другое указанное значение, если URL-адрес не найден / css-селектор не соответствует.Вам нужно добавить немного обработки для этого сценария.Затем вызовите эту функцию через цикл всех URL-адресов ico.