C Ошибка использования стека после вызова функции фильтра с регулярным выражением - PullRequest
0 голосов
/ 17 января 2020

Я написал функцию скребка с помощью @Jake Kaupp, как вы можете видеть здесь: Отображение таблицы гиперссылок в read_ html.

Моя проблема сейчас заключается в том, что запуск функция фильтра

target_regex <- "(xtm)|((k|K)(i|I|1|11)(d|D)(n|N).)|(Ar<e)\\s(you)\\s(in)| 
(LOAN)|(AR(\\s|\\S)[0-9])|((B|b)(i|1|l)tc.)|(Coupon)|(Plastic.King)|(organs)|(SILI)|(Electric.Cigarette.Machine)"



scraper_info <- function(pages){
  bribe <- read_html(paste("http://ipaidabribe.com/reports/paid?page", pages, sep = "="))
  all.nodes <- c(".heading-3 a",".paid-amount span", ".date", ".location", ".transaction a")
  l <- map(all.nodes, ~ html_nodes(bribe, .x) %>%
        html_text()) %>%
    as_tibble(.name_repair = "unique") %>%
    filter(str_detect(...1, target_regex, negate = TRUE)) %>%  
    mutate(reports = select(
            report <- html_nodes(bribe, ".read-more") %>% 
             html_attr("href") %>% 
             as_tibble(.name_repair = "unique") %>% 
             filter(str_detect(value, target_regex, negate = TRUE)) %>% 
             mutate(text = map_chr(value, ~read_html(.x) %>%  
                              html_node(".body-copy-lg") %>% 
                              html_text))), text )
}

Бросает мне C ошибка ограничения стека. Кто-нибудь знает, случается ли рекурсия, вызывающая функцию фильтра в приведенном выше коде, и как мне этого избежать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...