如何使用循环将带有来自 googlesearch 的链接的列表附加到另一个列表?

Posted

技术标签:

【中文标题】如何使用循环将带有来自 googlesearch 的链接的列表附加到另一个列表?【英文标题】:How do I append a list with links from a googlesearch to another list using loop? 【发布时间】:2020-06-03 02:32:37 【问题描述】:

几周前我开始学习 Python。

使用此代码,我想用谷歌搜索 CitiesList 中的每个 str,并使用循环将谷歌返回的前 3 个 URL 放入另一个列表中。像那样简单,但对我来说编码并不那么简单,哈哈

此代码仅返回 city1 结果,但我想做的是 Links[] 在其中包含 18 个 URL。 -> 6 个城市 x 3 个 URL/城市 = 18 个 URL

谢谢! :)

import pandas as pd
from googlesearch import search

Cities = [city1, city2, city3, city4, city5, city6]
y = []
x = 0
links = []
for j in search(Cities[x],start=0, stop=3, pause=2): 
    links = links[:] + [j]
    y.append(links)
    x = x + 1
print(links)

【问题讨论】:

你想在这里用links做什么?你在每次迭代时将它重置为一个空列表,所以它总是空的,然后你做links = links[:] + [j]links[:] 然后我没有意义,你可以做links = [j]...但我不认为这就是你的意图?我不清楚你想做什么。 【参考方案1】:

欢迎来到 Python 的世界;)。一年前我开始了我的旅程(拥有 20 年的 .net 经验)

我看到您只是在搜索结果中循环 (for),但您并没有在您的城市中循环。所以这就是我创建两个嵌套循环的原因。一个用于您的城市,一个用于您返回的每个结果。我也改成了一个列表,但如果你愿意的话,显然你可以继续使用数组

我相信这应该可行:

links = list()
for city in Cities :
    for result in search(city, start=0, stop=3, pause=2): 
        links.append(result)

【讨论】:

谢谢老兄!真的帮助我,我从这里得到的所有支持让我保持动力! :)

以上是关于如何使用循环将带有来自 googlesearch 的链接的列表附加到另一个列表?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用带有串行内循环的openMP并行化外循环以进行数组添加

如何使用 jQuery 在 Selenium WebDriver 中单击带有 Java 的按钮

来自数据框的嵌套字典,带有循环列表

二进制如何转换为硬件?

来自另一个表的带有循环的 SQL 触发器

无法在 google colab notebook 中使用 googlesearch 模块中的搜索方法