如何在搜索 api 中排除转推和回复?
How to Exclude retweets and replies in a search api?
如何在搜索中排除转推和回复api?
我正在尝试使用搜索 api 从 Twitter 获取提要,结果我也收到了回复和转推。
所以我想排除回复和转推。
怎么做有人帮我。
这是我的 url:
https://api.twitter.com/1.1/search/tweets.json?q=from:rioferdy5&count=20&result_type=recent
没有直接的方法可以排除来自 api 的转推和回复。但是,您可以过滤掉您得到的结果。
对于回复,您可以检查您从 api 获得的 in_reply_to_status_id
字段是否为空,这意味着它不是回复,如果它包含一个 id,那么它是一个回复。
对于转推,如果您想要从未被转推过的帖子,您可以检查 retweet_count
= 0 或者如果您想要已验证用户未转推的帖子,您可以检查 retweeted
= 假
我认为以上内容不正确,您可以在搜索中使用过滤器 API 但是文档非常差(不存在?)。
您的查询将变为:
?q=from:rioferdy AND -filter:retweets AND -filter:replies&count=20&result_type=recent
这里获得了更多过滤技巧:How to Master Twitter Search: Basic Boolean Operators and Filters
传递以下参数exclude_replies=true
抱歉我来晚了。我同意 Hitesh 的观点,因为他们不提供本地排除转推的方法,但每条转推的推文在返回的 json 中都有一个转推对象。因此,您可以循环浏览您的推文并排除任何具有 retweeted_status
typeof 'object' 的推文(意味着它们是其他人的转推)或保留那些具有 typeof 'undefined' 的推文(意味着它们是原来的)。 retweet_count=0
的问题是像@pattonoswalt 这样的人会转发他的所有推文。所以即使都是原创,计数也永远不会为零。
你可以在循环中使用类似这样的东西:
if(typeof tweets[i].retweeted_status === 'object') {tweets.splice(i,1);}
或
if(typeof tweets[i].retweeted_status !== 'undefined') {tweets.splice(i,1);}
旧 post,但人们可能仍会偶然发现它。
此处记录了大多数查询运算符:https://dev.twitter.com/rest/public/search
但对于 search/tweets 方法,您还可以指定 exclude:replies
and/or exclude:retweets
以从结果中过滤掉回复和转推。
只需在 API Console Tool 中对其进行测试,然后亲眼看看。
奖励:另一个未记录的查询运算符是 filter:verified
,用于从经过验证的用户那里获取推文。
示例查询:cats filter:vine filter:verified exclude:replies exclude:retweets
是的,您可以在搜索 API 期间通过在搜索字符串 (q) 中添加 -RT
来排除转推。例如:search?q="#demo -RT"
很晚才回复,和其他人一样,但我觉得 Paul 在这里的第二个答案应该是 "correct"。我希望推特能更好地记录这一点,或者让它更广为人知,但你可以做大量的搜索过滤器,即使在 2018 年使用他们的标准 API。
https://developer.twitter.com/en/docs/tweets/rules-and-filtering/overview/standard-operators
这里有一个相当全面的示例列表 :) 转发量介于两者之间。
-filter:retweets
如官方文档所述,这是允许的
puppy -filter:retweets containing “puppy”, filtering out retweets
https://developer.twitter.com/en/docs/tweets/rules-and-filtering/overview/standard-operators.html
只需使用nitter.net
它允许您从搜索结果中排除某些内容(通过搜索栏右端的高级搜索选项),它甚至还提供自己的 RSS 提要。在顶部,它扩展了这些 t.co 短 URLs 并将 youtube URL 替换为 invidio.us URL
最后,您可以通过名为 Huginn
的自托管界面,将您的 RSS 提要用作其他网络小程序的触发器
在新的 v2 API 中搜索如何执行此操作时发现了这个,现在是 puppy -is:retweet -is:reply
(不再需要 AND
)
https://developer.twitter.com/en/docs/twitter-api/tweets/search/integrate/build-a-query#list
在新的搜索推文 API 中,包括以下参数将删除不同风格的转推:
-is:retweet
排除转推
-is:quote
排除引用推文
-is:reply
排除回复
请在此处查看 API 文档:Search Tweets - Build a Query
只有 Mike Chen 的回复(奇怪的是在我投票之前只有 0 票)是正确的。由于 Twitter API v2 的推出,此处的其余答案已过时。我会直接评论 Mike 的回答,但我没有足够的声誉。
如何在搜索中排除转推和回复api?
我正在尝试使用搜索 api 从 Twitter 获取提要,结果我也收到了回复和转推。
所以我想排除回复和转推。
怎么做有人帮我。
这是我的 url:
https://api.twitter.com/1.1/search/tweets.json?q=from:rioferdy5&count=20&result_type=recent
没有直接的方法可以排除来自 api 的转推和回复。但是,您可以过滤掉您得到的结果。
对于回复,您可以检查您从 api 获得的 in_reply_to_status_id
字段是否为空,这意味着它不是回复,如果它包含一个 id,那么它是一个回复。
对于转推,如果您想要从未被转推过的帖子,您可以检查 retweet_count
= 0 或者如果您想要已验证用户未转推的帖子,您可以检查 retweeted
= 假
我认为以上内容不正确,您可以在搜索中使用过滤器 API 但是文档非常差(不存在?)。
您的查询将变为:
?q=from:rioferdy AND -filter:retweets AND -filter:replies&count=20&result_type=recent
这里获得了更多过滤技巧:How to Master Twitter Search: Basic Boolean Operators and Filters
传递以下参数exclude_replies=true
抱歉我来晚了。我同意 Hitesh 的观点,因为他们不提供本地排除转推的方法,但每条转推的推文在返回的 json 中都有一个转推对象。因此,您可以循环浏览您的推文并排除任何具有 retweeted_status
typeof 'object' 的推文(意味着它们是其他人的转推)或保留那些具有 typeof 'undefined' 的推文(意味着它们是原来的)。 retweet_count=0
的问题是像@pattonoswalt 这样的人会转发他的所有推文。所以即使都是原创,计数也永远不会为零。
你可以在循环中使用类似这样的东西:
if(typeof tweets[i].retweeted_status === 'object') {tweets.splice(i,1);}
或
if(typeof tweets[i].retweeted_status !== 'undefined') {tweets.splice(i,1);}
旧 post,但人们可能仍会偶然发现它。
此处记录了大多数查询运算符:https://dev.twitter.com/rest/public/search
但对于 search/tweets 方法,您还可以指定 exclude:replies
and/or exclude:retweets
以从结果中过滤掉回复和转推。
只需在 API Console Tool 中对其进行测试,然后亲眼看看。
奖励:另一个未记录的查询运算符是 filter:verified
,用于从经过验证的用户那里获取推文。
示例查询:cats filter:vine filter:verified exclude:replies exclude:retweets
是的,您可以在搜索 API 期间通过在搜索字符串 (q) 中添加 -RT
来排除转推。例如:search?q="#demo -RT"
很晚才回复,和其他人一样,但我觉得 Paul 在这里的第二个答案应该是 "correct"。我希望推特能更好地记录这一点,或者让它更广为人知,但你可以做大量的搜索过滤器,即使在 2018 年使用他们的标准 API。
https://developer.twitter.com/en/docs/tweets/rules-and-filtering/overview/standard-operators
这里有一个相当全面的示例列表 :) 转发量介于两者之间。
-filter:retweets
如官方文档所述,这是允许的
puppy -filter:retweets containing “puppy”, filtering out retweets
https://developer.twitter.com/en/docs/tweets/rules-and-filtering/overview/standard-operators.html
只需使用nitter.net 它允许您从搜索结果中排除某些内容(通过搜索栏右端的高级搜索选项),它甚至还提供自己的 RSS 提要。在顶部,它扩展了这些 t.co 短 URLs 并将 youtube URL 替换为 invidio.us URL
最后,您可以通过名为 Huginn
的自托管界面,将您的 RSS 提要用作其他网络小程序的触发器在新的 v2 API 中搜索如何执行此操作时发现了这个,现在是 puppy -is:retweet -is:reply
(不再需要 AND
)
https://developer.twitter.com/en/docs/twitter-api/tweets/search/integrate/build-a-query#list
在新的搜索推文 API 中,包括以下参数将删除不同风格的转推:
-is:retweet
排除转推
-is:quote
排除引用推文
-is:reply
排除回复
请在此处查看 API 文档:Search Tweets - Build a Query
只有 Mike Chen 的回复(奇怪的是在我投票之前只有 0 票)是正确的。由于 Twitter API v2 的推出,此处的其余答案已过时。我会直接评论 Mike 的回答,但我没有足够的声誉。