如何通过Tweepy过滤位置和关键词?

问题描述 投票:0回答:1
import os
cwd = os.getcwd() 
search_terms = ['Trump']  # logic is 'and'
location = ['USA']
retreive_num = 100


def stream_tweets(search_term, location, retreive_num):
    '''
    A function that returns a pandas dataframe for the keywords

    '''
    data = [] # empty list to which tweet_details obj will be added
    counter = 0 # counter to keep track of each iteration
    places = api.geo_search(query= location, granularity="country")
    place_id = places[0].id

    for tweet in tweepy.Cursor(api.search, 
                               q= [('\"{}\" -filter:retweets'.format(search_term)) and ("place:%s" % place_id)],
                               count=100, lang='en', tweet_mode='extended').items():
        tweet_details = {}
        tweet_details['name'] = tweet.user.screen_name
        tweet_details['tweet'] = tweet.full_text
        tweet_details['retweets'] = tweet.retweet_count
        tweet_details['location'] = tweet.user.location
        tweet_details['created'] = tweet.created_at.strftime("%d-%b-%Y")
        tweet_details['followers'] = tweet.user.followers_count
        tweet_details['is_user_verified'] = tweet.user.verified
        data.append(tweet_details)

        counter += 1
        if counter == retreive_num:
            break
        else:
            pass
    return data

for search_term in search_terms:
    df= pd.DataFrame(stream_tweets(search_term, location, retreive_num))

嗨,

我想检索按位置和关键字过滤的推文。但是您可以看到脚本输出了一个空结果。如何同时过滤两个条件?

python tweepy
1个回答
0
投票

我需要创建一个带有斜线的程序来做作业。我不是程序员。我希望该程序搜索针对贾斯汀·特鲁多的威胁性推文。然后在发现一个邮件时给我发送电子邮件。为了确定一条推文是否具有威胁性,该推文必须包含例如关键字“ trudeau”和以下“ bomb”或“ kill”之一。一旦使它起作用,我将优化关键字过滤器。

© www.soinside.com 2019 - 2024. All rights reserved.