как получить ссылку на битовый поток из ссылки href html - PullRequest
0 голосов
/ 15 января 2020

Я использую пакет rvest R для очистки файла PDF с этой веб-страницы, но после нажатия на * 1005 отображается окончательная ссылка (в виде URL-адреса битового потока - чем бы она ни была) * по имени AC1-96-21-01-2011.pdf. Окончательный PDF-файл скрыт в здесь скрыт от доступа. Это блокирует все попытки rvest function read_html(), так как окончательный PDF-файл открывается только при нажатии на предыдущую ссылку (на href). Скопируйте и вставьте xml node, который не позволяет мне войти в файл PDF.

<a href="/judgments/handle/123456789/701">Arbitration Case - AC</a>

Последний файл находится по этому URL, который не отображается в узле href. http://judgmenthck.kar.nic.in/judgments/bitstream/123456789/563560/2/AC1-96-21-01-2011.pdf

Итак, в качестве резюме, как получить доступ к ссылке на файл PDF, используя rvest, который не найден в атрибуте href, как описано выше.

Я попытался найти bitstream, но это привело меня к чему-то другому.

1 Ответ

1 голос
/ 15 января 2020

Вы смотрите не на тот узел, я думаю:

library(rvest)

"http://judgmenthck.kar.nic.in/judgments/handle/123456789/563560" %>%
read_html()                                                       %>%
html_nodes(xpath = "//td/a[@target='_blank']")                    %>%
html_attr("href")                                                 %>% 
unique()                                                          %>% 
{grep("[.]pdf", ., value = T)}                                    %>%
paste0("http://judgmenthck.kar.nic.in", .)                         ->
pdf_url

print(pdf_url)
# [1] "http://judgmenthck.kar.nic.in/judgments/bitstream/123456789/563560/2/AC1-96-21-01-2011.pdf"
...