Tweepy - 与 Twitter 提供的状态信息的差异 API

Tweepy - Differences with status info delivered by Twitter API

有人知道为什么 Twitter API 使用不同的方法针对相同的状态提供不同的信息吗?

我正在使用 Twitter 机器人收集交通事件。我遇到了 API 提供的信息的一些问题,因为我发现根据方法的不同,API 可以为相同的 Tweet/status 提供不同的结果。 这里是推文 ID:1531517617562951682 使用 api.get_status 的示例,状态没有属性 extended_tweet 和 timestamp_ms.

提前致谢。

{
   "created_at": "Tue May 31 06:07:08 +0000 2022",
   "id": 1531517617562951682,
   "id_str": "**1531517617562951682**",
   "text": "01:07 #Precauci\u00f3nVial | Por percance en Av. Ing. Eduardo Molina a la altura de Av. Talism\u00e1n, col. San Pedro el Chic\u2026 (**removed_url)",
   **"truncated": true**,
   "entities": {
      "hashtags": [
         {
            "text": "Precauci\u00f3nVial",
            "indices": [
               6,
               21
            ]
         }
      ],
      "symbols": [],
      "user_mentions": [],
      "urls": [
         {
            "url": **removed_url_short,
            "expanded_url": ,
            "display_url": ,
            "indices": [
               117,
               140
            ]
         }
      ]
   },
   "source": "<a href=\" rel=\"nofollow\">Twitter Web App</a>",
   "in_reply_to_status_id": null,
   "in_reply_to_status_id_str": null,
   "in_reply_to_user_id": null,
   "in_reply_to_user_id_str": null,
   "in_reply_to_screen_name": null,
   "user": {
      "id": 166594238,
      "id_str": "166594238",
      "name": "OVIAL_SSCCDMX",
      "screen_name": "OVIALCDMX",
      "location": "Liverpool #136, Col. Ju\u00e1rez",
      "description": "Centro de  Orientaci\u00f3n Vial de la Secretar\u00eda de Seguridad Ciudadana de la Ciudad de M\u00e9xico.",
      "url":,
      "entities": {
         "url": {
            "urls": [
               {
                  "url": ,
                  "expanded_url": ,
                  "display_url": "ssc.cdmx.gob.mx",
                  "indices": [
                     0,
                     23
                  ]
               }
            ]
         },
         "description": {
            "urls": []
         }
      },
      "protected": false,
      "followers_count": 1866313,
      "friends_count": 125,
      "listed_count": 4188,
      "created_at": "Wed Jul 14 15:00:43 +0000 2010",
      "favourites_count": 2748,
      "utc_offset": null,
      "time_zone": null,
      "geo_enabled": true,
      "verified": true,
      "statuses_count": 1110675,
      "lang": null,
      "contributors_enabled": false,
      "is_translator": false,
      "is_translation_enabled": false,
      "profile_background_color": "000000",
      "profile_background_image_url": 
      "profile_background_image_url_https": ,
      "profile_background_tile": false,
      "profile_image_url": ,
      "profile_image_url_https": ,
      "profile_banner_url": ,
      "profile_link_color": "BC8F8F",
      "profile_sidebar_border_color": "000000",
      "profile_sidebar_fill_color": "000000",
      "profile_text_color": "000000",
      "profile_use_background_image": false,
      "has_extended_profile": false,
      "default_profile": false,
      "default_profile_image": false,
      "following": false,
      "follow_request_sent": false,
      "notifications": false,
      "translator_type": "none",
      "withheld_in_countries": []
   },
   "geo": null,
   "coordinates": null,
   "place": null,
   "contributors": null,
   "is_quote_status": false,
   "retweet_count": 0,
   "favorite_count": 0,
   "favorited": false,
   "retweeted": false,
   "possibly_sensitive": false,
   "possibly_sensitive_appealable": false,
   "lang": "es"
}

使用 stream.Attributes extended_tweet 和时间戳收集的相同状态出现在状态上:

{
   "created_at": "Tue May 31 06:07:08 +0000 2022",
   "id": 1531517617562951682,
   "id_str": "1531517617562951682",
   "text": "01:07 #Precauci\u00f3nVial | Por percance en Av. Ing. Eduardo Molina a la altura de Av. Talism\u00e1n, col. San Pedro el Chic\u2026 (**removed url)",
   "display_text_range": [
      0,
      140
   ],
   "source": "<a href=\"" rel=\"nofollow\">Twitter Web App</a>",
   "truncated": true,
   "in_reply_to_status_id": null,
   "in_reply_to_status_id_str": null,
   "in_reply_to_user_id": null,
   "in_reply_to_user_id_str": null,
   "in_reply_to_screen_name": null,
   "user": {
      "id": 166594238,
      "id_str": "166594238",
      "name": "OVIAL_SSCCDMX",
      "screen_name": "OVIALCDMX",
      "location": "Liverpool #136, Col. Ju\u00e1rez",
      "url": "http://ssc.cdmx.gob.mx",
      "description": "Centro de  Orientaci\u00f3n Vial de la Secretar\u00eda de Seguridad Ciudadana de la Ciudad de M\u00e9xico.",
      "translator_type": "none",
      "protected": false,
      "verified": true,
      "followers_count": 1866203,
      "friends_count": 125,
      "listed_count": 4188,
      "favourites_count": 2748,
      "statuses_count": 1110325,
      "created_at": "Wed Jul 14 15:00:43 +0000 2010",
      "utc_offset": null,
      "time_zone": null,
      "geo_enabled": true,
      "lang": null,
      "contributors_enabled": false,
      "is_translator": false,
      "profile_background_color": "000000",
      "profile_background_image_url": ,
      "profile_background_image_url_https": ,
      "profile_background_tile": false,
      "profile_link_color": "BC8F8F",
      "profile_sidebar_border_color": "000000",
      "profile_sidebar_fill_color": "000000",
      "profile_text_color": "000000",
      "profile_use_background_image": false,
      "profile_image_url": ,
      "profile_image_url_https": ,
      "profile_banner_url": ,
      "default_profile": false,
      "default_profile_image": false,
      "following": null,
      "follow_request_sent": null,
      "notifications": null,
      "withheld_in_countries": []
   },
   "geo": null,
   "coordinates": null,
   "place": null,
   "contributors": null,
   "is_quote_status": false,
   "extended_tweet": {
      "full_text": "01:07 #Precauci\u00f3nVial | Por percance en Av. Ing. Eduardo Molina a la altura de Av. Talism\u00e1n, col. San Pedro el Chico, servicios de emergencia acuden al lugar. (**removed url)",
      "display_text_range": [
         0,
         158
      ],
      "entities": {
         "hashtags": [
            {
               "text": "Precauci\u00f3nVial",
               "indices": [
                  6,
                  21
               ]
            }
         ],
         "urls": [],
         "user_mentions": [],
         "symbols": [],
         "media": [
            {
               "id": 1531517217703092224,
               "id_str": "1531517217703092224",
               "indices": [
                  159,
                  182
               ],
               "additional_media_info": {
                  "monetizable": false
               },
               "media_url": ,
               "media_url_https": ,
               "url":,
               "display_url": "pic.twitter.com/q3seKvyPIM",
               "expanded_url": ,
               "type": "video",
               "video_info": {
                  "aspect_ratio": [
                     16,
                     9
                  ],
                  "duration_millis": 4003,
                  "variants": [
                     {
                        "content_type": "application/x-mpegURL",
                        "url": ""
                     },
                     {
                        "bitrate": 832000,
                        "content_type": "video/mp4",
                        "url": "
                     },
                     {
                        "bitrate": 256000,
                        "content_type": "video/mp4",
                        "url": 
                     }
                  ]
               },
               "sizes": {
                  "thumb": {
                     "w": 150,
                     "h": 150,
                     "resize": "crop"
                  },
                  "large": {
                     "w": 640,
                     "h": 360,
                     "resize": "fit"
                  },
                  "medium": {
                     "w": 640,
                     "h": 360,
                     "resize": "fit"
                  },
                  "small": {
                     "w": 640,
                     "h": 360,
                     "resize": "fit"
                  }
               }
            }
         ]
      },
      "extended_entities": {
         "media": [
            {
               "id": 1531517217703092224,
               "id_str": "1531517217703092224",
               "indices": [
                  159,
                  182
               ],
               "additional_media_info": {
                  "monetizable": false
               },
               "media_url": ,
               "media_url_https": ,
               "url": ,
               "display_url": ,
               "expanded_url": ,
               "type": "video",
               "video_info": {
                  "aspect_ratio": [
                     16,
                     9
                  ],
                  "duration_millis": 4003,
                  "variants": [
                     {
                        "content_type": "application/x-mpegURL",
                        "url": "
                     },
                     {
                        "bitrate": 832000,
                        "content_type": "video/mp4",
                        "url": "
                     },
                     {
                        "bitrate": 256000,
                        "content_type": "video/mp4",
                        "url": ""
                     }
                  ]
               },
               "sizes": {
                  "thumb": {
                     "w": 150,
                     "h": 150,
                     "resize": "crop"
                  },
                  "large": {
                     "w": 640,
                     "h": 360,
                     "resize": "fit"
                  },
                  "medium": {
                     "w": 640,
                     "h": 360,
                     "resize": "fit"
                  },
                  "small": {
                     "w": 640,
                     "h": 360,
                     "resize": "fit"
                  }
               }
            }
         ]
      }
   },
   "quote_count": 0,
   "reply_count": 0,
   "retweet_count": 0,
   "favorite_count": 0,
   "entities": {
      "hashtags": [
         {
            "text": "Precauci\u00f3nVial",
            "indices": [
               6,
               21
            ]
         }
      ],
      "urls": [
         {
            "url": ,
            "expanded_url": ,
            "display_url": "twitter.com/i/web/status/1\u2026",
            "indices": [
               117,
               140
            ]
         }
      ],
      "user_mentions": [],
      "symbols": []
   },
   "favorited": false,
   "retweeted": false,
   "possibly_sensitive": false,
   "filter_level": "low",
   "lang": "es",
   "**timestamp_ms**": "1653977228905"
}

对于 v1.1,扩展推文信息默认在流 API 中可用,但对于 REST 端点,您需要在请求中添加 tweet_mode=extended 参数以检索全文。

在 V2 中,不再有扩展(超过 140 个字符)推文的概念。作为标准,所有推文本身最多 280 个字符。