使用Twitter API在不缩短t.co链接的情况下提取原始Tweet数据

问题描述 投票:0回答:1

我正在学习在Tweepy中使用Twitter API。我需要提取原始Tweet数据的帮助-这意味着没有缩短的URL。例如,This Tweet显示了YouTube链接,但在被API解析后,会显示t.co链接。如何打印显示的文字?感谢您的帮助。

注意:我与this question有类似的关注,但并不相同。

功能代码:

def get_tweets(username): 

        auth = tweepy.OAuthHandler(consumer_key, consumer_secret) 
        auth.set_access_token(access_key, access_secret) 

        # Call api 
        api = tweepy.API(auth) 

        tweets = api.user_timeline(screen_name=username) 

        # Empty Array 
        tmp=[] 


        # create array of tweet information: username,  
        # tweet id, date/time, text 
        tweets_for_csv = [tweet.text for tweet in tweets] # CSV file created  
        for j in tweets_for_csv: 
            # Append tweets to the empty array tmp 
            tmp.append(j)

        dict1 = {}
        punctuation = '''`~!@#$%^&*(){}[];:'".,\/?'''
        tmps = str(tmp)
        for char in tmps: 
            if char in punctuation: 
                tmps = tmps.replace(char," ")
        tmps2 = tmps.split(" ")

        a = 0
        while a < len(tmps2):
            for b in tmps2:
                dict1[a] = b
                a += 1
python twitter tweepy
1个回答
0
投票

Twitter的API返回原始Tweet数据,而无需任何解析。此数据包括缩短的URL,因为这就是表示Tweet的方式。 Twitter本身只是解析并显示原始URL。链接本身甚至仍然是缩短的链接。

Tweet objects具有entities属性,该属性为entities object提供一个urls字段,该字段是URL objects的数组,表示Tweet文本中包含的URL,如果没有,则为空数组链接存在。每个URL对象包括一个display_url字段和一个粘贴到/键入到Tweet中的原始URL,以及一个indices字段,该字段是一个整数数组,表示URL起始和结束的Tweet文本内的偏移量。您可以使用这些字段替换缩短的URL。

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