亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從json文件中的字符串中刪除標簽(\r、\n、<、>)

從json文件中的字符串中刪除標簽(\r、\n、<、>)

慕尼黑5688855 2021-09-02 14:53:53
我知道以前有人問過類似的問題,但到目前為止我無法解決我的問題,所以提前道歉。我有一個帶有文本的 json 文件('test.json')。文本顯示如下:"... >>\r\n>> This is a test.>\r\n> \r\n-- \r\nMit freundlichen Gr&uuml;ssen\r\n\r\nMike Klence ..."整體輸出應該是純文本:"... This is a test. Mit freundlichen Grüssen Mike Klence ..."使用 beautifulsoup,我必須刪除那些 html 標簽。但是那些 >、\r、\n- - 仍然保留在文本中。所以我嘗試了以下代碼:import codecsfrom bs4 import BeautifulSoupwith codecs.open('test.json', encoding = 'utf-8') as f:    soup = BeautifulSoup(f, 'lxml')    invalid_tags = ['\r', '\n', '<', '>']    for tag in invalid_tags:         for match in soup.find_all(tag):            match.replace_with()print(soup.get_text())但它對文件中的文本沒有任何作用。我嘗試了不同的變化,但似乎沒有任何改變。我怎樣才能讓我的代碼正常工作?或者,如果有另一種更簡單或更快的方法,我也會很感激閱讀這些方法。順便說一句,我在 anaconda 上使用 python 3.6。
查看完整描述

1 回答

?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

你可以使用 python 內置函數來做到這一點replace()。


with open('test.json', 'r', encoding = 'utf-8') as f:

    content = f.read()

    invalid_tags = ['\\r', '\\n', '<', '>', '-', ';']

    for invalid_tag in invalid_tags:

        content = content.replace(invalid_tag, '')

    content = content.replace('&u', 'ü')


print(content)

輸出:


...  This is a test.  Mit freundlichen GrüumlssenMike Klence ...


查看完整回答
反對 回復 2021-09-02
  • 1 回答
  • 0 關注
  • 590 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號