gpt4 book ai didi

python - 如何解码 Spark 中的 HTML 实体?

转载 作者:太空宇宙 更新时间:2023-11-04 05:27:49 25 4
gpt4 key购买 nike

我正在将大量文本文件读入 DataFrame。最初它只有一列,value .文本文件使用 HTML 编码(即,它们使用 &lt; 而不是 < 等)。我想将它们全部解码回正常字符。

显然,我可以使用 UDF 来完成,但它会非常慢。

我可以尝试 regexp_replace,但它会更慢,因为有 200 多个命名实体,每个实体都需要自己的正则表达式函数。每个 regexp_replace 调用都需要解析整行文本,一次搜索一个特定的编码字符。

什么是好的方法?

最佳答案

由于您阅读的是纯文本输入,因此我会简单地跳过 UDF 部分并在初始处理后将数据传递给 JVM。使用 Python 3.4+:

import html
from pyspark.sql.types import StringType, StructField, StructType

def clean(s):
return html.unescape(s),

(sc.textFile("README.md")
.map(clean)
.toDF(StructType([StructField("value", StringType(), False)])))

关于python - 如何解码 Spark 中的 HTML 实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38164532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com