我必须从基于 Target-URI 的 *.warc.gz 文件中检索记录。文档说这需要创建外部 CDXJ 索引文件。
我尝试以 as 打开文件gzip.open()
并执行 a seek(offset)
,但查找操作需要相当长的时间(秒)。
有没有其他正确的方法来检索记录。
编辑:我正在使用warc python库,他们似乎没有在warc文件上提供直接的 f.seek() 。
我必须从基于 Target-URI 的 *.warc.gz 文件中检索记录。文档说这需要创建外部 CDXJ 索引文件。
我尝试以 as 打开文件gzip.open()
并执行 a seek(offset)
,但查找操作需要相当长的时间(秒)。
有没有其他正确的方法来检索记录。
编辑:我正在使用warc python库,他们似乎没有在warc文件上提供直接的 f.seek() 。
您应该在解压缩之前对文件进行搜索。通常,WARC 文件是逐个记录压缩的,CDXJ 中的偏移量和长度允许剪切出单个 WARC 记录,然后在单个记录上执行 gzip.open()。有疑问,最好使用图书馆。Warcio甚至提供了一个命令行工具来通过偏移量提取单个记录:warcio extract xyz.warc.gz offset
.