gpt4 book ai didi

python - 如何防止BeautifulSoup剥线

转载 作者:行者123 更新时间:2023-11-30 23:58:34 25 4
gpt4 key购买 nike

我正在尝试将在线 html 页面翻译为文本。

我对这个结构有疑问:

<div align="justify"><b>Available in  
<a href="http://www.example.com.be/book.php?number=1">
French</a> and
<a href="http://www.example.com.be/book.php?number=5">
English</a>.
</div>

这是它的 Python 字符串表示形式:

'<div align="justify"><b>Available in  \r\n<a href="http://www.example.com.be/book.php?number=1">\r\nFrench</a>; \r\n<a href="http://www.example.com.be/book.php?number=5">\r\nEnglish</a>.\r\n</div>'

使用时:

html_content = get_html_div_from_above()
para = BeautifulSoup(html_content)
txt = para.text

BeautifulSoup 将其翻译(在“txt”变量中)为:

u'Available inFrenchandEnglish.'

它可能会删除原始 html 字符串中的每一行。

对于这个问题你有一个干净的解决方案吗?

谢谢。

最佳答案

我终于找到了一个好的解决方案:

def clean_line(line):
return re.sub(r'[ ]{2,}', ' ', re.sub(r'[\r\n]', '', line))

html_content = get_html_div_from_above()
para = BeautifulSoup(html_content)
''.join([clean_line(line) for line in para.findAll(text=True)])

哪些输出:

u'Available in French and English.  '

关于python - 如何防止BeautifulSoup剥线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2988229/

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