我已经从普通爬网下载了一个warc.gz
文件,我必须使用 Spark 处理它。如何将文件转换为RDD?sc.textFile("filepath")
似乎无济于事。 当rdd.take(1)
被打印出来时,它给了我[u'WARC/1.0']
,而它应该给我一个完整的记录。如何将文件转换为可处理的 rdd?谢谢!
你得到这一点是因为RDD支持非结构化数据。如果您将文件读取为 RDD,则 warc 结构将消失。因此,当你做rdd.take(1(时,它本质上意味着RDD的第一行。因此,结果 [u'WARC/1.0']。如果要处理 warc 记录。我不建议使用 spark,因为目前还支持 Warc 文件。使用 python warc 库应该可以帮助您解决这个问题,因为它会保留您丰富的 WARC 数据的结构。