【问题标题】:Is there any way to get links, hashtags, and @names from Twitter API requests?有什么方法可以从 Twitter API 请求中获取链接、主题标签和 @names?
【发布时间】:2012-07-20 22:26:58
【问题描述】:

我正在构建一个网站,并且正在使用 Twitter API 来显示来自用户推文的数据。它工作正常,但所有推文都以纯文本形式检索。这意味着,与 Twitter 网站不同,所有链接都是纯文本,没有@names 是链接,并且主题标签是完全静态的。

我会假设 Twitter 使用正则表达式提取这些元素,但我不仅不擅长正则表达式,而且我希望结果尽可能接近 Twitter 的实现。有没有办法从 Twitter API 本身中提取这些?如果不是,我如何才能尽可能接近 Twitter 的解析?

【问题讨论】:

    标签: php regex twitter


    【解决方案1】:

    看看Tweet Entities 。您可以将参数&tweet_entities=1 添加到某些 REST 调用的末尾。 JSON 响应将包含您寻找的归因于推文的额外属性。

    I.E

    网址实体

    从推文文本中提取的 URL 数组。每个 URL 实体来 具有以下属性: url , display_url, expand_url, 索引

     "text": "Twitter for Mac is now easier and faster, and you can open multiple windows at once http://t.co/0JG5Mcq",
        "entities": {
          "media": [
          ],
          "urls": [
            {
              "url": "http://t.co/0JG5Mcq",
              "display_url": "blog.twitter.com/2011/05/twitte…",
              "expanded_url": "http://blog.twitter.com/2011/05/twitter-for-mac-update.html",
              "indices": [
                84,
                103
              ]
            }
          ],
          "user_mentions": [
          ],
          "hashtags": [
          ]
        }
    

    主题标签实体

    从推文文本中提取的主题标签数组。每个标签 实体带有以下属性:

    文字
    Hashtag 文本索引
    Hashtag 的角色位置 摘自

        "text": "Loved #devnestSF"
    >     "entities": {
    >       "media": [
    >       ],
    >       "urls": [
    >       ],
    >       "user_mentions": [
    >       ],
    >       "hashtags": [
    >         "text": "devnestSF"
    >         "indices": [
    >           6,
    >           16
    >         ]
    >       ]
    >     }
    

    user_mentions 实体

    从推文文本中提取的一组 Twitter 屏幕名称。每个 用户实体具有以下属性:

    身份证
    用户 ID(int 格式) id_str 用户 ID(字符串格式) 屏幕名称
    用户屏幕名称 name
    用户全名索引
    这 提取用户提及的字符位置

    "text": "@rno Et demi!"
        "entities": {
          "media": [
          ],
          "urls": [
          ],
          "user_mentions": [
            {
              "id": 22548447,
              "id_str": "22548447",
              "screen_name": "rno",
              "name": "Arnaud Meunier",
              "indices": [
                0,
                4
              ]
            }
          ],
          "hashtags": [
          ]
        }
    

    更多推文实体在此链接:

    https://dev.twitter.com/docs/tweet-entities

    【讨论】:

    • 哇,这非常有帮助,让我免于自己拨打这些电话并挖掘 json 以查看返回的响应类型。您知道“媒体”键下的内容吗? (如果您添加它,那么它就是 Tweet Entities 的完整文档)谢谢!
    • 照片的。有谈论包括其他媒体实体,但现在是直接上传到 Twitter 或通过照片 API 的照片。我没有在答案中包含它,因为问题是关于我列出的 3 个。
    【解决方案2】:

    我相信这就是您正在寻找的:

    https://dev.twitter.com/docs/api/1/get/statuses/oembed

    【讨论】:

      猜你喜欢
      • 2012-01-20
      • 2011-10-02
      • 2012-03-19
      • 2012-12-03
      • 1970-01-01
      • 1970-01-01
      • 2013-06-09
      • 2018-03-03
      • 2014-04-15
      相关资源
      最近更新 更多