R readlines编码问题

R readlines encoding issues

我正在尝试阅读所需的电子书文本 URL:

url <- "http://www.gutenberg.org/cache/epub/55/pg55.txt"
raw <- readLines(url, encoding = "UTF-8")

然而,当我检查 raw 对象时,它 return 结果如下:

> raw[1]
[1] "7‹\b\bÿ†u_[=11=]2ÿpg55.txt.utf8.gzip"
> raw[2]
[1] "¾ûçþd‡ú\u008f]»ßð×ÿÝ7ýïç¶=Æ\bøëÅ\u008fvbñ™7úGÿÌwg{7×äǾ³cÄEù§XÏo7íÐØW7ßM×Ø/ûu,íOm3¬7óÞþÜ­Ÿlí~î¦õ#?÷ŸfëÁ7Å2þÜ5wöÙ7ûãS{ÕKcõþÐ\u008dëÞn®¿QkØ6C·Úë1±€?6»n½ø0L9[=11=]1.Ô÷çÃê¼ã'ÿ«o.~ùM³ß÷½mE3.~hp[=11=]6Z.Ù?aE?@2ørÿÔŸ'\u008d7‹ùaš2NËä—Ör÷8Ùà7Ÿ‡V«õϱž7hº£­Óï7»cÃc7"
> raw[3]
[1] "W~ –33½ø¦]÷‡väÃþ"

在这种情况下,我应该如何正确阅读文本?

如果您愿意使用 {readr},您可以使用 read_file() 函数来读取数据:

library(readr)
url <- "http://www.gutenberg.org/cache/epub/55/pg55.txt"
raw <- read_file(url)

这给出了一个长度为 1 的字符向量。您可以检查对象 raw:

substr(raw, 1, 50)
[1] "The Project Gutenberg EBook of The Wonderful Wizar"