【问题标题】:How to obtain link presentation text in BeautifulSoup?BeautifulSoup中如何获取链接演示文本?
【发布时间】:2013-12-17 14:54:07
【问题描述】:

我用 Python 为维基百科页面构建了一个解析器,如下所示:

    ...
    data = soup.findAll('div', attrs={'class':'mw-content-ltr'});
        for div in data:
            links = div.findAll('a', href=True, title=True)
            for l in links:
                print l

查找给定 div 区域内的所有链接;生产:

...
<a href="/wiki/Lumber" title="Lumber">lumber</a>
<a href="/wiki/Arecaceae" title="Arecaceae">palms</a>
<a href="/wiki/Cyatheales" title="Cyatheales">tree ferns</a>
<a href="/wiki/Banana" title="Banana">bananas</a>
<a href="/wiki/Bamboo" title="Bamboo">bamboo</a>

但是我如何获得显示链接的单词,即“香蕉”或“竹子”?我会得到标题,但我需要知道哪些单词是链接的,而不是它们链接到的位置。 我看到了一个问题,可以让我获得下一个兄弟姐妹,但那是链接后面的文本,这不是我想要的。

【问题讨论】:

    标签: python html-parsing beautifulsoup


    【解决方案1】:

    检查 .contents 参数,我想这就是你想要的。 http://www.crummy.com/software/BeautifulSoup/bs3/documentation.html#contents

    【讨论】:

    • 这行得通,但是你知道为什么 python 返回这样的东西:[u'Metasequoia'],带有 [u...] 注释吗?
    • 干杯 :) 我只是用谷歌搜索了它。
    猜你喜欢
    • 1970-01-01
    • 2020-05-19
    • 1970-01-01
    • 2015-01-03
    • 2021-11-26
    • 2015-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多