html5搜索框代注释,使用python在HTML代码中查找特定注释

如果您想要所有注释,可以将findAll与callable一起使用:

>>> from bs4 import BeautifulSoup, Comment

>>>

>>> s = """

...

header

...

... www.test1.com

... www.test2.org

...

...

tail

... """

>>>

>>> soup = BeautifulSoup(s)

>>> comments = soup.findAll(text = lambda text: isinstance(text, Comment))

>>>

>>> comments

[u' why ', u' why not ']

一旦你得到它们,你可以使用通常的技巧来移动:

>>> comments[0].next

u'

www.test1.com

www.test2.org

'

>>> comments[0].next.split()

[u'www.test1.com', u'www.test2.org']

根据页面的实际情况,您可能需要稍微调整一下,然后您必须选择所需的注释,但这应该可以帮助您入门.

编辑:

如果你真的只想要看起来像某些特定文本的那些,你可以做类似的事情

>>> comments = soup.findAll(text = lambda text: isinstance(text, Comment) and text.strip() == 'why')

>>> comments

[u' why ']

或者您可以使用列表解析在事后过滤它们:

>>> [c for c in comments if c.strip().startswith("why")]

[u' why ', u' why not ']

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值