我从常规抓取中下载了warc.gz
文件,我必须使用spark处理它。如何将文件转换为RDD?sc.textFile("filepath")
似乎没有帮助。
打印rdd.take(1)
时,它会给我[u'WARC/1.0']
,但它应该给我一整条记录。如何将文件转换为可处理的rdd?谢谢!
答案 0 :(得分:1)
你得到的是因为RDD支持非结构化数据。如果您将文件作为RDD读取,则warc结构将消失。因此,当你执行rdd.take(1)时,它实质上意味着RDD的第一行。因此,结果[u' WARC / 1.0']。如果要处理warc记录。我不推荐使用spark,因为还支持Warc文件。使用python warc库可以帮助你解决这个问题,因为它可以保留丰富的WARC数据的结构。