Как преобразовать HTML-текст в обычный текст, используя pyspark? Замена HTML-тегов из строки - PullRequest
0 голосов
/ 11 ноября 2019

У меня есть один текстовый файл, в котором есть один столбец «descn», в котором есть текст, но он находится в формате html. Поэтому я хочу преобразовать HTML-текст в обычный текст, используя pyspark. Пожалуйста, помогите мне сделать это.

имя файла:

mdcl_insigt.txt

input:

PROTEUSÂ <div><br></div><div>We are struggling with pathology. We don&#39;t control specimens of prostatectomy. The hospital pathology is not cooperating. I am reaching out to another hospital. You have pretty intense manual guidelines on pathology in the [PROTEUS] protocol for managing of RP [specimens]. Please e-mail me with work around options.</div>

должно конвертироваться следующим образом, вывод:

PROTEUS We are struggling with pathology. We don't control specimens of prostatectomy. The hospital pathology is not cooperating. I am reaching out to another hospital. You have pretty intense manual guidelines on pathology in the [PROTEUS] protocol for managing of RP [specimens]. Please e-mail me with work around options.

1 Ответ

0 голосов
/ 11 ноября 2019

Вы можете попробовать сделать regexp_replace () :

from pyspark.sql.functions import regexp_replace

df = df.withColumn("parsed_descn", regexp_replace("descn", "<[^>]+>", ""))

Регулярное выражение не идеально и может потерпеть неудачу. Пожалуйста, сделайте еще несколько исследований, чтобы сделать это лучше.

Это сработало на вашем примере строки, когда я попробовал его на regexr

Вот скриншот: enter image description here

Выход Pyspark:

df.withColumn("parsed", F.regexp_replace("descn", "<[^>]+>", "")).select("parsed").collect()

[Row(parsed='PROTEUSÂ We are struggling with pathology. We don&#39;t control specimens of prostatectomy. The hospital pathology is not cooperating. I am reaching out to another hospital. You have pretty intense manual guidelines on pathology in the [PROTEUS] protocol for managing of RP [specimens]. Please e-mail me with work around options.')]
...