如何使用python请求阅读和映射谷歌搜索结果的描述?



我使用python请求来查找Google搜索结果。我能够找到链接和描述,但我如何将链接与其各自的描述映射。

下面是代码及其输出:

req=urllib2.Request('http://www.google.com/search?hl=en&safe=off&q='+'cat')  
sock=urllib2.urlopen(req)
data = sock.read()
soup = BeautifulSoup(data, 'lxml')
if(soup):
links = soup.findAll('cite')
spans = soup.find_all("span", {"class": "st"})
for link, span in ((l,s) for l in links for s in spans):
print link.text, span.get_text()

输出:

https://en.wikipedia.org/wiki/Cat,家猫(拉丁语:Felis catus)是一种小型的,典型的毛茸茸的肉食性哺乳动物。当它们作为室内宠物饲养或简称为猫时,它们通常被称为家猫

https://en.wikipedia.org/wiki/Cat,一个非营利组织,完全由志愿者运营,他们希望改善新加坡流浪猫的福利。

https://en.wikipedia.org/wiki/Cat,建筑和采矿设备,柴油和天然气发动机,工业燃气轮机的制造商,以及广泛的相关服务。

www.catwelfare.org/,The 家猫(拉丁语:Felis catus)是一种小型的,典型的毛茸茸的肉食性哺乳动物。当它们作为室内宠物饲养或简称为猫时,它们通常被称为家猫

www.catwelfare.org/,一个非营利组织,完全由志愿者运营,他们希望改善新加坡流浪猫的福利。

www.catwelfare.org/,建筑和采矿设备,柴油和天然气发动机,工业燃气轮机以及广泛提供相关服务的制造商。

等。。

同一链接与谷歌搜索结果的所有描述映射。

所需的输出是,

https://en.wikipedia.org/wiki/Cat,家猫(拉丁语:Felis catus)是一种小型的,典型的毛茸茸的肉食性哺乳动物。当它们作为室内宠物饲养或简称为猫时,它们通常被称为家猫

www.catwelfare.org/,一个非营利组织,完全由志愿者运营,他们希望改善新加坡流浪猫的福利。

www.cat.com/,Manufacturer 建筑和采矿设备、柴油和天然气发动机、工业燃气轮机以及广泛的相关服务。

请帮助我解决这个问题。

您基本上不小心在行for link, span in ((l,s) for l in links for s in spans):中执行了funcutils.permutations,该行逻辑上显示为"对于links中链接的所有组合和spans中的跨度,请执行以下操作:"。

你想要的是遍历链接跨度,并选择关联的链接/跨度。您可能需要对一个通用的外部 HTML 元素进行find()并对其进行迭代,在每次迭代中抓取linkspan

最新更新