首页 > 解决方案 > 在使用 Beautiful Soup 模块时,我无法理解这行代码的含义

问题描述

def search(self, topic, site):
        bs = self.getPage(site.searchurl + topic)
        searchresults = bs.select(site.resultingList)
        for result in searchresults:
            url = result.select(site.resulturl)[0].attrs["href"]
            if (site.absoluteUrl):
                bs = self.getPage(url)
            else:
                bs = self.getPage(site.url + url)
            if bs is None:
                print("Something was wrong with that page or URL. Skipping!")
                return
            title = self.safeGet(bs, site.titleTag)
            body = self.safeGet(bs, site.bodyTag)
            if title != '' and body != '':
                content = Content(topic, title, body, url)
                content.print()

在这段代码中是什么意思:

result.select(site.resulturl)[0].attrs["href"]

更具体地说,我无法理解attrs["href"]

标签: pythonbeautifulsouptags

解决方案


attrs["href"]从 中提取“href”属性result.select(site.resulturl)[0]。所以很可能site.resulturl包含至少 1 个或多个<a ... href="...">标签(或任何其他具有“href”属性的标签),并且该行将链接拉出列表中的第一个。


推荐阅读