当我在 html 中遇到评论时,如何停止使用 Beautifulsoup 提取 href 标签?

Posted

技术标签:

【中文标题】当我在 html 中遇到评论时,如何停止使用 Beautifulsoup 提取 href 标签?【英文标题】:How do I stop extracting href tags using Beautifulsoup when I encounter a comment in html? 【发布时间】:2015-12-23 18:12:36 【问题描述】:
    03420&nbsp;&nbsp;<a href="/kegg-bin/show_pathway?ban03420">Nucleotide excision repair</a><br>
    03430&nbsp;&nbsp;<a href="/kegg-bin/show_pathway?ban03430">Mismatch repair</a><br>
    03440&nbsp;&nbsp;<a href="/kegg-bin/show_pathway?ban03440">Homologous recombination</a><br>
      </ul>
    </ul>
    <!-- -->
    <b>Environmental Information Processing</b>
    <ul>
     Membrane transport
      <ul>
    02010&nbsp;&nbsp;<a href="/kegg-bin/show_pathway?ban02010">ABC transporters</a><br>

我需要使用我使用 Beautifulsoup 完成的 python 从网页中提取路径代码(例如 03420、03430 等)。我想在环境信息处理之前停下来,所以我在这里寻找一些可以使用的不同标签。 &lt;!-- --&gt; 处于完美位置,但我不知道如何在这一点上停下来。有人可以告诉我是否/如何使用它来停止在评论之前提取代码。 (我对 python 和 html 很陌生,直接跳到网络解析,所以请多多包涵。)

【问题讨论】:

这是一个 HTML 注释。在多种语言中与///* */ 基本相同。 是评论,见***.com/questions/2757396/… @TimLewis 哦。谢谢。我希望这不是评论。 是否有其他方法可以在此时停止提取代码? 因为人们似乎对你标题中的问题很迂腐,而不是你似乎想问的问题,所以我就把这个留在这里:How to find the comment tag with Beautiful soup? 【参考方案1】:

HTMLXHTMLXML 中,&lt;!-- 开始一个评论范围,--&gt; 结束它。它是一个注释,不影响浏览器上的结果,但在响应中添加一些字节。

<!-- comment some text 
     and you can break lines.
     It is compatible for html, xhtml and xml.
-->

在其他语言中,您还有其他用于 cmets 的语法,例如:

/* this is a comment for C, C++, C#, Java, javascript, CSS, etc.
   you can break lines */

// this is a single line comment for C, C++, C#, Java, Javascript.. you can't break lines here

如果您想了解更多关于 cmets 的信息,请访问 this link。

【讨论】:

【参考方案2】:

它是 html 语法中的块注释。 http://www.w3schools.com/html/html_comments.asp

【讨论】:

【参考方案3】:

这是一个没有任何内容的 HTML 注释。

就目前而言,它似乎没有任何用途,因为它没有填充页面中的任何功能,但它的存在可能是有原因的。我可能是一些服务器代码显示一些内部信息的地方,所以指望它保持不变有点冒险。

如果它只是一条空评论,页面的作者可能会决定将其清除。

以下标签中的文本看起来更可靠,因为它实际上在页面中起到了作用。

【讨论】:

以上是关于当我在 html 中遇到评论时,如何停止使用 Beautifulsoup 提取 href 标签?的主要内容,如果未能解决你的问题,请参考以下文章

当我在 Firebase 中找到要获取的数据时如何停止 forEach? [复制]

当我旋转屏幕时,progressDialog 停止更新

当我在 Chrome 中单击检查时,如何让 Beautiful soup html 解析器与显示的代码相同?

键盘输入时,如何在Ajax调用URL更改后停止MVC页面刷新

如何停止线性布局以使用webview滚动?

如何使用 jquery 停止移动屏幕旋转?