html - 拒绝 BeautifulSoup 中的一些 HTML 标签

标签 html linux bash text beautifulsoup

我知道这可能很简单,但我找不到正确的方法来处理它。 我有一个 HTML 文档,我想提取其内容。本文档正文为:

<div class="articleContent">
        <div class="dateblock">
            <div class="textsize">
                <span class="textsize_label">
                    Font Size</span> <a href="javascript:decreaseFontSize();"
                        title="Increase font-size" class="txtsizeminus"><span>-</span></a> <a href="javascript:increaseFontSize();"
                            title="Increase font-size" class="txtsizeplus"><span>+</span></a>
            </div>

            <p class="article_date">
                Last Update: date
            </p>
        </div>
        <div id="ctl00_ctl00_cpAB_cp1_cbcContentBreak">
<div class="zoomMe">
        <P>The Content is here</p>
</div>

我想要的是文档的内容,而不是“字体大小”和“上次更新”等其他信息。但由于所有这些信息都是“articleContent”的子项,我不知道如何摆脱它们。 我必须注意,由于这些附加信息可能会从一个文档更改为另一个文档,因此我无法使用简单的正则表达式将它们从最终字符串中删除。我必须在处理 HTML 文件时将它们过滤掉。 我必须补充一点,我正在使用以下命令来提取文档的这一部分及其内容:

body = soup.find("div", {"class":"articleContent"})
pars= [s for s in body.strings if s.strip() != '']

那么,问题是如何避免在“pars”数组中包含这些附加信息?

有什么想法吗? 谢谢

最佳答案

您是否尝试过只查找您想要的特定标签?

desired_div = soup.find("div", attrs={"class": "zoomMe"})
print(desired_div.text)

关于html - 拒绝 BeautifulSoup 中的一些 HTML 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19165406/

相关文章:

linux - 试运行一个有潜在危险的脚本?

jquery - CKEditor 的 SetData 在版本 4 中不起作用 -

LINUX -- DMA 用于数据传输 -- 从 SPI 读取 --- tx 到 usart - RPi

linux - 运行命令时./usr 和/usr 之间的区别

bash - bash 中 $x, $[x], ${x} 的区别

bash - 使用 bash 命令打印文件特定部分的最快方法

python - 将bashrc的环境变量加载到python中

Javascript 和 HTML getElementById 神秘的功能障碍

html - 如何垂直对齐 HTML 段落中的跨度和文本?

html - 使用 flexbox 将网格从桌面调整到移动