我尝试使用BeautifulSoup4从具有值itemprop
的属性url
的页面上的多个锚元素解析href值
例如,从/pages/page
中提取<a itemprop="url" href="/pages/page"></a>
,但在一个页面中有多个这样的项目,所以我在数组中喜欢它们。
我正在考虑这样的事情soup("span", html = True, {'itemprop' : 'name' })
答案 0 :(得分:0)
通过find_all()
,您可以在解析的输出中搜索特定标记。在你的情况下,这很容易。如果第一个参数是一个字符串,它只会找到具有该名称的标签。因此soup.find_all("a")
会找到所有锚标记。
现在它还支持(几乎)任何关键字参数,以进一步缩小您的选择范围。在您的情况下,您希望将属性itemprop
设置为url
,以便您可以使用soup.find_all("a", itemprop="url")
执行此操作。
现在会返回一个标记列表,如果要从这些标记中提取href
属性,可以使用tag.get("href")
。最终结果将是这样的:
anchored_tags = [tag.get("href") for tag in soup.find_all("a", itemprop="url")]