Python 列表为空,不应为空
Python list is empty which shouldn't be empty
一切顺利。只是,我想在示例中应用列表命令。
test = [tweet.text for tweet in tweets]
但它本质上是 returns 一个空列表:print(test).
编辑:
MWE:
import sys
sys.modules[__name__].__dict__.clear()
import os
import tweepy as tw
import pandas as pd
consumer_key = 'xxx'
consumer_secret = 'xxx'
access_token = 'xxx'
access_token_secret = 'xxx'
auth = tw.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tw.API(auth, wait_on_rate_limit=True)
# Define the search term and the date_since date as variables
search_words = "#wildfire"
date_since = "2020-01-09"
#Collect tweets
tweets = tw.Cursor(api.search,
q=search_words,
lang = "ger",
since=date_since).items(5)
new_search = search_words + " -filter:retweets"
#new_search
tweets = tw.Cursor(api.search,
q=new_search,
lang="en",
since=date_since).items(5)
for tweet in tweets:
print(tweet.text)
test = [tweet.text for tweet in tweets]
print(test)
一些评论表明推文可能是空的。如果我没记错的话,tweeps 不是空的,因为我可以遍历内容。
我想这很简单,但如有任何帮助,我们将不胜感激。
谢谢
丹尼尔
Cursor.items
returns an iterator。你在这里重复它:
for tweet in tweets:
print(tweet.text)
让它筋疲力尽。然后你尝试再次迭代它
test = [tweet.text for tweet in tweets]
但它没有剩余物品。
先制作列表,然后您就可以以一种可以重复多次的形式获得数据。
test = [tweet.text for tweet in tweets]
for text in test:
print(text)
一切顺利。只是,我想在示例中应用列表命令。
test = [tweet.text for tweet in tweets]
但它本质上是 returns 一个空列表:print(test).
编辑:
MWE:
import sys
sys.modules[__name__].__dict__.clear()
import os
import tweepy as tw
import pandas as pd
consumer_key = 'xxx'
consumer_secret = 'xxx'
access_token = 'xxx'
access_token_secret = 'xxx'
auth = tw.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tw.API(auth, wait_on_rate_limit=True)
# Define the search term and the date_since date as variables
search_words = "#wildfire"
date_since = "2020-01-09"
#Collect tweets
tweets = tw.Cursor(api.search,
q=search_words,
lang = "ger",
since=date_since).items(5)
new_search = search_words + " -filter:retweets"
#new_search
tweets = tw.Cursor(api.search,
q=new_search,
lang="en",
since=date_since).items(5)
for tweet in tweets:
print(tweet.text)
test = [tweet.text for tweet in tweets]
print(test)
一些评论表明推文可能是空的。如果我没记错的话,tweeps 不是空的,因为我可以遍历内容。
我想这很简单,但如有任何帮助,我们将不胜感激。
谢谢
丹尼尔
Cursor.items
returns an iterator。你在这里重复它:
for tweet in tweets:
print(tweet.text)
让它筋疲力尽。然后你尝试再次迭代它
test = [tweet.text for tweet in tweets]
但它没有剩余物品。
先制作列表,然后您就可以以一种可以重复多次的形式获得数据。
test = [tweet.text for tweet in tweets]
for text in test:
print(text)