如何使用某些表情符号搜索推文

How to search tweets with certain emoji

我正在做一个使用 Python 表情符号推荐系统的项目。第一步是从推特上收集数据。具体来说,我需要使用最流行的表情符号的推文。我正在考虑抓取网站或使用 twitter API。但是我在 twitter 文档中没有看到任何关于如何使用某些表情符号进行搜索的信息(可能使用它的 unicode,例如 U+1F602)。

提前致谢!

Twitter Rest API specify a call to search/tweets

Returns a collection of relevant Tweets matching a specified query.

查询参数 q 应该是 UTF-8 编码的,因此请尝试传递您要查找的表情符号的 UTF-8 编码。

编辑:我刚刚查看了带有表情符号的推文,它们是图片,所以看起来您无法搜索它们。

我在这篇文章的帮助下做到了 https://medium.com/@mroth/how-i-built-emojitracker-179cfd8238ac#a5d7

我没有搜索 u'\U0001F602',而是搜索了 1F602 然后我开始了以下得到的结果:

api = tweepy.API(auth)
print api
query = '1F602' # u'\U0001F602'   
print query
max_tweets = 10
search = tweepy.Cursor(api.search, q=query).items(max_tweets)
for status in search:
    print status.text

通过 UTF-8 编码进行搜索对我不起作用,但我很幸运,只需在查询中复制和粘贴表情符号即可。 I think this became supported in 2017

更新后的代码如下所示:

api = tweepy.API(auth)
print api
query =  #U+1F601   
print query
max_tweets = 10
search = tweepy.Cursor(api.search, q=query).items(max_tweets)
for status in search:
    print status.text

我不确定为什么这行得通而使用编码却行不通。如果您尝试搜索编码,它会搜索文字字符串。