Python 如何从结果字符串中提取链接?

Python 如何从结果字符串中提取链接?,python,beautifulsoup,Python,Beautifulsoup,我正在做我的第一个python项目,我被beautifulsoap困住了。。。即使在阅读了整个文档并尝试了很多东西之后,我仍然被卡住了 我正在解析amazon结果页面,并希望删除每个项目的链接 到目前为止,我的代码是: import requests from bs4 import BeautifulSoup import time import re url = "http://www.amazon.de/s/ref=nb_sb_noss?__mk_de_DE=%C3%85M%C3%85%C5

我正在做我的第一个python项目,我被beautifulsoap困住了。。。即使在阅读了整个文档并尝试了很多东西之后,我仍然被卡住了

我正在解析amazon结果页面,并希望删除每个项目的链接

到目前为止,我的代码是:

import requests
from bs4 import BeautifulSoup
import time
import re
url = "http://www.amazon.de/s/ref=nb_sb_noss?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&url=search-alias%3Daps&field-keywords=gtx+980+ti+-4gb+-970+-radeon+-amd"
r = requests.get(url)
g_data = soup.find_all("li", {"class": "s-result-item celwidget"})


for item in g_data:
result = item.contents[0].find_all("a", {"class": "a-size-small a-link-normal a-text-normal"})[0]
        print (result)
使用我的代码,我成功地瞄准了页面上的所有项目(使用这里没有显示的代码,我已经成功地刮取了项目名称和价格),但是由于刮除了实际链接,我遇到了问题

因此,上述代码的输出为:

<a class="a-size-small a-link-normal a-text-normal" href="http://www.amazon.de/gp/offer-listing/B01062AE20"><span class="a-size-base a-color-price a-text-bold">EUR 759,00</span><span class="a-letter-space"></span>neu<span class="a-letter-space"></span><span class="a-color-secondary">(32 Angebote)</span><span class="a-letter-space"></span><span class="a-color-secondary a-text-strike"></span></a>
但是不行。。。我不想愚蠢地解析字符串。。。当然BS4可以做到这一点,开箱即用。。。只是怎么做

提前感谢,,
Jaka

BeautifulSoup
中获取元素属性值是:


item.contents[0]。查找_all(“a”,{“class”:“a-size-small a-link-normal a-text-normal”})[0]。获得(“href”)成功谢谢@雅加姆。是的,link标签是您案例中的
result
变量。
item.contents[0].find_all("a", {"class": "a-size-small a-link-normal a-text-normal"})[0].link
item.contents[0].find_all("a", {"class": "a-size-small a-link-normal a-text-normal"})[0].href
item.contents[0].find_all("a", {"class": "a-size-small a-link-normal a-text-normal"})[0].get.link()
...
result["href"]
result.get("href")