我使用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 )是一种小型的,典型的毛茸茸的食肉哺乳动物。它们常被称为家庭猫,当它们作为室内宠物或简单的猫饲养时。
https://en.wikipedia.org/wiki/Cat是一个非营利性组织,完全由那些希望改善新加坡流浪猫福利的志愿者管理。
https://en.wikipedia.org/wiki/Cat是建筑和采矿设备、柴油和天然气发动机、工业燃气轮机的制造商,并提供广泛的相关服务。
家庭猫(拉丁语: Felis catus)是一种小型的、典型的毛茸茸的食肉哺乳动物。它们常被称为家庭猫,当它们作为室内宠物或简单的猫饲养时。
一个非营利性组织,完全由那些想要改善新加坡流浪猫福利的志愿者们经营。
Www.catwell. of /,建筑和采矿设备、柴油和天然气发动机、工业燃气轮机的制造商,以及广泛提供的相关服务。
等等。
同样的链接被映射到google搜索结果的所有描述中。
所需的输出是,
https://en.wikipedia.org/wiki/Cat,家猫(拉丁文: Felis )是一种小型的,典型的毛茸茸的食肉哺乳动物。它们常被称为家庭猫,当它们作为室内宠物或简单的猫饲养时。
一个非营利性组织,完全由那些想要改善新加坡流浪猫福利的志愿者们经营。
www.cat.com/,是建筑和采矿设备、柴油和天然气发动机、工业燃气轮机以及广泛提供的相关服务的制造商。
请帮我解决这个问题。
发布于 2017-05-16 08:06:37
您基本上是不小心在行funcutils.permutations中执行for link, span in ((l,s) for l in links for s in spans):,这一行逻辑上是“对于links中的所有链接组合和spans中的跨链接,请执行以下操作:”。
您想要的是遍历链接或跨范围,无论您选择哪一个,都可以获得相关的链接/跨度。您可能需要对一个常见的外部HTML元素执行一个find(),并在每次迭代中迭代获取link和span。
https://stackoverflow.com/questions/43993343
复制相似问题