Python 如何筛选并只获取一个下载链接?

Python 如何筛选并只获取一个下载链接?,python,python-2.7,beautifulsoup,Python,Python 2.7,Beautifulsoup,我有以下代码: import urllib from bs4 import BeautifulSoup url = "http://www.microsoft.com/en-us/download/confirmation.aspx?id=17851" pageurl = urllib.urlopen(url) soup = BeautifulSoup(pageurl) for d in soup.select("p.start-download [href]"): prin

我有以下代码:

import urllib
from bs4 import BeautifulSoup

url = "http://www.microsoft.com/en-us/download/confirmation.aspx?id=17851"
pageurl = urllib.urlopen(url)
soup = BeautifulSoup(pageurl)

for d in soup.select("p.start-download [href]"):
        print d['href']
当我运行这段代码时,它给了我很多下载链接。 我怎么能只获取一个给定的下载链接

for d in soup.select("p.start-download [href]"):
        print d['href']
        break
将在第一个链接后停止

将在第一个链接后停止

将在第一个链接后停止


将在第一个链接后停止

如果您使用给定的代码,您将无法获取链接并使用它们。请改用以下代码:

import urllib
from bs4 import BeautifulSoup

url = "http://www.microsoft.com/en-us/download/confirmation.aspx?id=17851"
pageurl = urllib.urlopen(url)
soup = BeautifulSoup(pageurl)

urls = []
for d in soup.select("p.start-download [href]"):
    urls.append(d.attrs['href'])

print urls[0]
如果使用上述代码,则可以在程序的其他部分中使用链接本身。您也可以使用lit理解来执行此操作:

urls = [d['href'] for d in soup.select("p.start-download [href]")]

print urls[0]

然后,您可以迭代
url
以获取所需的url,或者只使用索引获取链接。无论哪种方式,这都比只打印链接更灵活。例如,如果您不想完全安装,只想使用其他软件包或XP软件包,而不是Vista、7和8(使用此处的URL作为示例)。

如果使用给定的代码,您将无法获得链接并使用它们。请改用以下代码:

import urllib
from bs4 import BeautifulSoup

url = "http://www.microsoft.com/en-us/download/confirmation.aspx?id=17851"
pageurl = urllib.urlopen(url)
soup = BeautifulSoup(pageurl)

urls = []
for d in soup.select("p.start-download [href]"):
    urls.append(d.attrs['href'])

print urls[0]
如果使用上述代码,则可以在程序的其他部分中使用链接本身。您也可以使用lit理解来执行此操作:

urls = [d['href'] for d in soup.select("p.start-download [href]")]

print urls[0]

然后,您可以迭代
url
以获取所需的url,或者只使用索引获取链接。无论哪种方式,这都比只打印链接更灵活。例如,如果您不想完全安装,只想使用其他软件包或XP软件包,而不是Vista、7和8(使用此处的URL作为示例)。

如果使用给定的代码,您将无法获得链接并使用它们。请改用以下代码:

import urllib
from bs4 import BeautifulSoup

url = "http://www.microsoft.com/en-us/download/confirmation.aspx?id=17851"
pageurl = urllib.urlopen(url)
soup = BeautifulSoup(pageurl)

urls = []
for d in soup.select("p.start-download [href]"):
    urls.append(d.attrs['href'])

print urls[0]
如果使用上述代码,则可以在程序的其他部分中使用链接本身。您也可以使用lit理解来执行此操作:

urls = [d['href'] for d in soup.select("p.start-download [href]")]

print urls[0]

然后,您可以迭代
url
以获取所需的url,或者只使用索引获取链接。无论哪种方式,这都比只打印链接更灵活。例如,如果您不想完全安装,只想使用其他软件包或XP软件包,而不是Vista、7和8(使用此处的URL作为示例)。

如果使用给定的代码,您将无法获得链接并使用它们。请改用以下代码:

import urllib
from bs4 import BeautifulSoup

url = "http://www.microsoft.com/en-us/download/confirmation.aspx?id=17851"
pageurl = urllib.urlopen(url)
soup = BeautifulSoup(pageurl)

urls = []
for d in soup.select("p.start-download [href]"):
    urls.append(d.attrs['href'])

print urls[0]
如果使用上述代码,则可以在程序的其他部分中使用链接本身。您也可以使用lit理解来执行此操作:

urls = [d['href'] for d in soup.select("p.start-download [href]")]

print urls[0]

然后,您可以迭代
url
以获取所需的url,或者只使用索引获取链接。无论哪种方式,这都比只打印链接更灵活。例如,如果您不想完全安装,只想使用其他软件包或XP软件包而不是Vista、7和8(使用此处的URL作为示例)。

您可以将它们提取到列表中,然后在空闲时进行迭代。或者你可以在找到第一个链接后中断。你正在寻找或将要寻找的特定链接是否有任何限制?哦,是的,我可以打破它。美好的没问题,快乐编码:DYou可以将它们提取到列表中,然后在空闲时进行迭代。或者你可以在找到第一个链接后中断。你正在寻找或将要寻找的特定链接是否有任何限制?哦,是的,我可以打破它。美好的没问题,快乐编码:DYou可以将它们提取到列表中,然后在空闲时进行迭代。或者你可以在找到第一个链接后中断。你正在寻找或将要寻找的特定链接是否有任何限制?哦,是的,我可以打破它。美好的没问题,快乐编码:DYou可以将它们提取到列表中,然后在空闲时进行迭代。或者你可以在找到第一个链接后中断。你正在寻找或将要寻找的特定链接是否有任何限制?哦,是的,我可以打破它。美好的没问题,快乐编码:D