猿问

Python - Return 语句清空我的列表

我目前正在开发一个 selenium 机器人,它从 1000 个名词列表中获取一个随机英文名词,将其放入一个获得类似 instagram 标签的网站,然后继续 instagram,登录我的帐户,并开始喜欢带有该标签的图片, 然后重新开始这个过程


我的问题是返回类似主题标签的函数,这是它的代码:


def get_similar_tags(tag):

    url = "https://top-hashtags.com/hashtag/" + str(tag).lower() + "/"

    page = requests.get(url).text

    parsed_page = BeautifulSoup(page, "html.parser")

    parsed_page = parsed_page.find("div", class_="tht-tags")

    text = parsed_page.text

    hashtag = text.split(" ")

    hashtag = [s.strip('#') for s in hashtag]

    hashtag = hashtag.pop(len(hashtag) - 1)

    return hashtag

当我尝试在函数内部打印主题标签变量时,输出将充满主题标签,这正是我所需要的。


当我使用该函数将主题标签变量分配给另一个变量时,如下所示:


foo = get_similar_tags(random_noun)

然后我做


print(foo)

我一无所获,甚至没有一个空列表,只是一个空行。我已经尝试使用全局变量分配get_similar_tags函数返回的值,但这也不起作用。


任何帮助将不胜感激,谢谢


扬帆大鱼
浏览 202回答 1
1回答

明月笑刀无情

hashtag = hashtag.pop(len(hashtag) - 1)不要那样做,试试:hashtag.pop(len(hashtag) - 1)list.pop([i])删除列表中给定位置的项目,并将其返回。如果未指定索引,a.pop() 将删除并返回列表中的最后一项。(方法签名中 i 周围的方括号表示该参数是可选的,而不是您应该在该位置键入方括号。您将在 Python 库参考中经常看到这种表示法。)https://docs.python.org/3/tutorial/datastructures.html
随时随地看视频慕课网APP

相关分类

Python
我要回答