从多个 html 个文本文件创建语料库

creating corpus from multiple html text files

我有一个 html 文件的列表,我从网上获取了一些文本并使用 read_html 阅读它们。

我的文件名是这样的:

a1 <- read_html(link of the text) 
a2 <- read_html(link of the text) 
.
.
. ## until:
a100 <- read_html(link of the text)

我正在尝试用这些创建一个语料库。

我该怎么做?

谢谢。

你可以预先分配向量:

text <- rep(NA, 100)
text[1] <- read_html(link1)
...
text[100] <- read_html(link100)

更好的是,如果您将链接组织为矢量。然后您可以按照评论中的建议使用 lapply:

text <- lapply(links, read_html)

(这里links是链接的向量)

使用assign:

会是相当糟糕的编码风格
# not a good idea
for (i in 1:100) assign(paste0("text", i), get(paste0("link", i)))

因为这相当慢并且难以进一步处理。

我建议使用 purrr 作为解决方案:

library(tidyverse)
library(purrr)
library(rvest)

files <- list.files("path/to/html_links", full.names = T)

all_html <- tibble(file_path = files) %>% 
  mutate(filenames = basename(files)) %>% 
  mutate(text = map(file_path, read_html))

是跟踪哪段文本属于哪个文件的好方法。它还使情绪或任何其他类型的分析在文档级别变得容易。