python - 在使用 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"]
解决方案
attrs["href"]
从 中提取“href”属性result.select(site.resulturl)[0]
。所以很可能site.resulturl
包含至少 1 个或多个<a ... href="...">
标签(或任何其他具有“href”属性的标签),并且该行将链接拉出列表中的第一个。
推荐阅读
- python - 获取 KeyError = 0 错误,而我在两个熊猫数据框列上使用 np.nanprod
- javascript - 将类成员对象访问到匿名函数中的最简洁方法
- r - Colclasses 命令失败,并显示“scan() expected 'a real', got...”消息
- javascript - NodeJS:将立体声 PCM 波流捕获到单声道 AudioBuffer
- flutter - 带有 BoxDecoration 和子元素的 Container 中图标的具体位置:Row
- ios - 可以删除 .dYSM 文件吗?
- c++ - C ++从模块大小中的进程读取所有内存
- javascript - 重新加载页面后,ajax 没有将我的输入保存在表单中
- swift - 类初始化器 swift ,将向量设为可选
- javascript - Reacht JS:渲染异步创建的数组时未正确应用 CSS