问题标签 [warc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
67 浏览

java - 为什么我的 Apache Nutch warc 和 commoncrawldump 在爬网后失败?

我已经使用 Nutch 成功爬取了一个网站,现在我想从结果中创建一个 warc。但是,运行 warc 和 commoncrawldump 命令都会失败。此外,bin/nutch dump -segement .... 在同一段文件夹上运行成功。

我正在使用 nutch v-1.17 并运行:

hadoop.log 的错误是ERROR tools.CommonCrawlDataDumper - No segment directories found in my/path/ 尽管刚刚在那里进行了爬网。

0 投票
2 回答
446 浏览

python - Python:读取文件并将键和值添加到不同行的字典中

我对 Python 很陌生,我在完成一项基本上是这样的任务时遇到了麻烦:

#逐行读取WARC文件以识别string1。

#找到string1时,将部分字符串作为键添加到字典中。

#然后继续读取文件识别string2,并将string2的一部分作为值添加到之前的key中。

#继续浏览文件并做同样的事情来构建字典。

我无法导入任何内容,因此给我带来了一些麻烦,尤其是添加键,然后将值留空并继续浏览文件以查找要用作值的 string2。

我已经开始考虑将密钥保存到中间变量,然后继续识别值,添加到中间变量并最终构建字典。

0 投票
1 回答
309 浏览

python - 根据标头将 WARC 文件拆分为块:WARC/1.0 Python

我是编程新手,正在尝试通过将 WARC 文件拆分成块然后将每个块存储在字典中来处理它。

每个块应以 WARC/1.0 标头开头,并由 3 个空行分隔。我还想删除前 2 段:

#让一切从这里开始:

我尝试使用生成器对块进行分组,但它返回一组(整个文件)。有没有简单的方法来分离这些?

我无法导入任何库。

任何帮助将不胜感激!!

0 投票
1 回答
146 浏览

python - Python:如何拆分WARC文件?

我的目标是将 WARC 文件从 CommonCrawl 拆分并分类到其单独的记录中。示例文件:

如何在“WARC/1.0”行将文件拆分为不同的记录?

0 投票
0 回答
111 浏览

c++ - 我应该如何使用 C++ 解析 5gb WARC 文件?

WARC 文件来自 Common Crawl。一个样品:

环境:我在 Windows 的 VS 2019 上使用 C++。我不喜欢使用特殊的库。我查看了将文件映射到内存中,但有人说当您只是按顺序解析文件时它并没有那么快。因为我在 Windows 中,所以我得到了一个很好的 GUI,但我也得到了所有 Unicode 的混乱。

解析的期望输出:我有一个输出文件,我想在其中保存大部分文本和一些标签。我将丢弃大部分输入。一些warc标签向解析器发出信号,它可以向前跳过500个字符。例如,除“WARC-Type: response”之外的任何“WARC-Type”都可以向前跳过已知数量。

我尝试过:将文件读入堆缓冲区,然后使用滑动窗口对缓冲区进行切片。根据窗口内容跳过/保存。能够捕获跨越缓冲区的标签。最终,我将使用 regex 和 string::find 之类的东西来匹配标签和文本。

最大的问题:Unicode。该文件是 UTF-8 格式,包含您可以想象的各种有趣的字符。我使用 MultiByteToWideChar。如果我只转换窗口,我不会使用太多内存,但会遇到文本排列问题。UTF-8 的 15 个字符不会产生 ANSI 的 15 个字符。根据我的 multibtyetowidechar 标志、大小等。我会跳过文本、解码错误等。如果我转换整个缓冲区然后切片到一个窗口中,我使用的内存是原来的两倍。没什么大不了的,但似乎效率低下。

0 投票
1 回答
146 浏览

c++ - 使用 ReadFile 时,一半的读取缓冲区损坏

与 ReadFile 一起使用的一半缓冲区已损坏。无论缓冲区的大小如何,其中一半都具有相同的损坏字符。我已经寻找任何可能导致读取提前停止的东西,等等。如果我增加缓冲区的大小,我会看到更多的文件,所以它不会在文件的特定部分失败。

Visual Studio 2019。Windows 10。

调试器 html 视图(512 字节缓冲区) 512 字节缓冲区

调试器 html 视图(1024 字节缓冲区)。这表明文件可能不是损坏的来源。 1025 字节缓冲区

杂项说明:有人告诉我,内存映射文件并没有提供优势,因为我是按顺序处理文件的。这种方法的另一个优点是,当我在 WARC 文件中检测到特定的和重复出现的标签时,我可以向前跳过约 500 个字节并恢复处理。这提高了速度。

0 投票
0 回答
66 浏览

warc - 如何将 WARC 文件转换为单页 HTML 文件?

有没有办法将 WARC 文件转换为类似于monolithSingleFile产生的最终结果的单页 HTML 文件?

0 投票
1 回答
67 浏览

warc - WARC 文件中的记录数

我目前正在从 CommonCrawl 语料库中解析 WARC 文件,并且我想预先知道有多少条记录,而无需遍历所有 WARC 记录。

WARC 1.1 标准是否定义了此类信息?

0 投票
1 回答
40 浏览

webarchive - 将 warc.gz 转换为 .warc

我尝试使用 gzip 提取 warc.gz 文件导致了 WARC,但它不会加载到http://replayweb.page中。

使用 Unarchiver 提取它给了我所有扩展的 html 和其他文件。

将warc.gz 转换为warc 的最新推荐方法是什么?出于某种原因,我在为这个简单的任务寻找建议的尝试中失败了。

谢谢!

0 投票
1 回答
317 浏览

python - 导入warc时出现错误“没有名为'__builtin__'的模块”

如何warc在 python 3 中使用包?

我安装warc没有问题。但是当我打电话时,import warc我得到了错误:

发生异常:ModuleNotFoundError 没有名为“ builtin ”的模块