1
Я пытаюсь скопировать список больниц, их адреса и их номера телефонов от Catholic Health Initiatives.Веб-скребок с использованием R
код я использую:
# install.packages('rvest')
library('rvest')
htmlpage <- read_html("http://www.catholichealthinitiatives.org/landing.cfm?xyzpdqabc=0&id=39524&action=list")
chihtml <- html_nodes(htmlpage,".info , .address")
chi <- html_text(chihtml)
chi
library(stringr)
chi <- str_replace_all(chi, "[\r\n\t]" , "")
chi
и это результат Заголовок:
[1] "CHI St. VincentTwo St. Vincent Cr.Little Rock, AR 72205P 501.552.3000F 501.552.4241"
[2] "Two St. Vincent Cr.Little Rock, AR 72205P 501.552.3000F 501.552.4241"
[3] "CHI St. Vincent Hot Springs300 Werner StreetHot Springs National Park, AR 71913P 501.622.1000"
[4] "300 Werner StreetHot Springs National Park, AR 71913P 501.622.1000"
[5] "CHI St. Vincent InfirmaryTwo St. Vincent CircleLittle Rock, AR 72205P 502.552.3000F 501.552.4241"
[6] "Two St. Vincent CircleLittle Rock, AR 72205P 502.552.3000F 501.552.4241"
Я хотел бы, чтобы удалить скопированный адрес, указанный ниже основной линии:
[1] "CHI EX: St. VincentTwo St. Vincent Cr.Little Rock, AR 72205P 501.552.3000F 501.552.4241"
## remove next line ##
[2] "Two St. Vincent Cr.Little Rock, AR 72205P 501.552.3000F 501.552.4241"
Спасибо @alistaire! Есть ли способ разделить [1] «CHI St. VincentTwo St. Vincent Cr.Little Rock, AR 72205P 501.552.3000F 501.552.4241« запятыми? Например: [1] «CHI St. Vincent, Two St. Vincent Cr., Little Rock, AR 72205P 501.552.3000, F 501.552.4241»? Извините, я довольно новичок в R, и я стараюсь сделать побочный проект на работе. – Clayton
Лучший способ сделать это - не удалять символы '\ n' (newline), которые сообщают вам, где должны быть разрывы строк, поэтому вы можете вызвать' strsplit (chi, '\ n +') ', чтобы разбить его на список с элементом для каждого адреса, каждый из которых разделен. Если это грязно ('trim = FALSE'),' strsplit' может на самом деле выполнить всю вашу очистку пробелов: 'strsplit (chi, '[\ n \ r \ t] +')' – alistaire
Это все еще не разделяет телефоны, факсы , и конечная строка адресов с дополнительным. Для этого вам понадобится более серьезное регулярное выражение. – alistaire