入门指南:Enterprise 规则与查询
OR
来表示。
每条规则的长度最多为 2,048 个字符,对正向子句(希望匹配或筛选的内容)和负向子句(希望排除且不匹配的内容)的数量不设上限。
构建规则与查询
关键词匹配 关键词匹配类似于搜索界面中的查询。例如,以下 Enterprise 运算符规则将匹配正文中包含术语“social”的活动。social
使用空格进行 AND 连接
添加另一个关键词等同于增加一个匹配条件。例如,此规则仅会匹配文本中同时出现“social”和“media”的活动,顺序不限——在术语之间留一个空格即表示布尔 AND 逻辑。如果你在规则中显式包含 AND,rules endpoint 将会拒绝它。
social media
使用大写 OR 进行 OR 连接
然而,许多情况下实际上需要布尔 OR 逻辑,这也很容易实现。请注意,OR 运算符必须为大写,小写的“or”将被视为普通关键词。
social OR data
取反术语
还有一些场景可能需要排除包含某些关键词的结果(布尔 NOT 逻辑)。例如,包含“happy”的活动,但排除文本中包含“birthday”的任何活动。
social -personality
使用括号进行分组
这些逻辑可通过括号进行分组组合,并扩展为更复杂的查询。
(social OR data) (academic OR research) -personality -information -university
不过这只是开始——虽然上述示例仅依赖于对关键词的分词匹配,Enterprise 产品还提供运算符,对文本执行不同类型的匹配。
精确匹配
"social media research"
子串匹配
contains:info
近邻匹配
"social media research"~3
此外,其他运算符允许你在除文本之外的社交数据独有属性上进行过滤。
发布 Post 的用户
from:XDeveloeprs
以美国科罗拉多州博尔德市 Pearl St. 为中心 10 英里范围内的地理标注 Tweets
point_radius:[-105.27346517 40.01924738 10.0mi]
综合运用
这些可以与上述相同类型的文本过滤逻辑组合使用。
(social OR data) (academic OR research OR "social media research") point_radius:[-105.27346517 40.01924738 10.0mi] lang:en -personality -information -university
布尔语法
逻辑类型 | 运算符语法 | 说明 |
AND | social data | 在两个运算符之间留空格,即表示它们之间为 AND 逻辑。 匹配同时包含两个关键词(“social”、“data”)的活动。 不要在规则中显式写 AND。只使用空格。显式写出的 AND 会被当作普通关键词处理。 |
OR | social OR data | 若要用 OR 连接两个运算符,请在它们之间插入全大写的 OR,并以空格分隔。 匹配包含任一关键词(“social” 或 “data”)的活动。 请注意,如果在同一条规则中同时使用 OR 和 AND,应理解“运算顺序”部分所述的操作顺序,并按下文说明使用括号将非取反的运算符分组,以确保规则按预期运行。 规则中必须使用大写的 “OR”;小写的 ‘or’ 将被视为普通关键词。 |
NOT | social data -apple -android -phone | 在运算符或运算符组前紧接着插入一个 - 字符。 上述示例规则匹配包含关键词 “social” 的活动,但排除包含关键词 “data” 的活动。 不允许使用取反的 OR 来请求“firehose 中除取反项以外的所有内容”。例如, apple OR -ipad 无效,因为它会匹配除提到 “ipad” 之外的所有活动。 |
分组 | (social OR data) -XDevelopers -api | 用括号将多个运算符括起可创建一个功能性“分组”。 分组可以像单个子句一样,通过空格(AND)或 OR 与其他子句连接。但请注意,最佳实践是不对整个组统一加取反符号 -。相反,应分别对每个运算符取反,并通过空格(AND)串联起来。 例如,不要使用 -(iphone OR imac OR macbook),而应使用:-iphone -imac -macbook。 当单条规则同时包含 AND 和 OR 时,分组尤为重要,因为规则评估遵循特定的运算顺序。详见下文。 |
has:hashtags
运算符表示“我想要包含话题标签的活动”。
负向运算符 定义希望从结果中排除的内容,通过使用上述布尔 NOT 逻辑实现。例如,-has:hashtags
表示“排除任何包含话题标签的活动,即使它们在其他方面符合我的规则”。
高级运算符产品对正向和负向子句的数量不作限制,但受最大长度 2,048 个字符的约束。
运算顺序
- 先合并通过 AND 逻辑连接的运算符
- 再应用通过 OR 逻辑连接的运算符
apple OR iphone ipad
将被评估为apple OR (iphone ipad)
ipad iphone OR android
将被评估为(iphone ipad) OR android
(apple OR iphone) ipad
iphone (ipad OR android)
标点、变音符号与大小写不敏感
Diacr**í**tica
或话题标签 #cumplea**ñ**os
的规则将匹配 “Diacrítica” 或 “#cumpleaños”,但不会匹配缺少重音符 í 或字母 ñ 的 “Diacritica” 或 “#cumpleanos”。
带有重音或变音符号的字符与普通字符同等对待,不被视为词边界。例如,规则 cumpleaños 只会匹配包含单词 cumpleaños 的活动,而不会匹配包含 cumplea、cumplean 或 os 的活动。
所有运算符的评估均不区分大小写。例如,规则 Cat
将匹配以下所有内容:“cat”、“CAT”、“Cat”。
如我们的“Matching rules”页面所述,每条规则都可以带有一个标签。标签本身不会影响过滤,但可用于在你的 App 中对规则进行逻辑分组。每条规则只能有一个标签,且长度最多为 255 个字符。创建规则时,应通过 API 在 JSON 格式的规则中包含该标签,具体见我们的“Matching rules”页面。
以 JSON 格式编写规则
{"value":"insert_rule_here"}
包含双引号的规则
如果规则中包含用于精确匹配或其他运算符的双引号字符("
),必须使用反斜杠进行转义,以便与 JSON 结构本身区分。
"social data" @XDevelopers
对应的 JSON 格式规则为:
{"value":"\"social data\" @XDevelopers"}
包含双引号字符串字面量的规则
若要在精确匹配中将双引号字符作为字符串字面量包含在内,需要进行双重转义。例如,要匹配精确短语 “Toys “R” Us”(包括围绕 “R” 的双引号),其纯文本表示如下:
"Toys \"R\" Us"
将其转换为 JSON 格式时,应使用以下结构:
{"value":"\"Toys \\\"R\\\" Us\""}
带有标签的规则
如上所述,若要为规则添加可选的标签,只需在规则中加入一个额外的 tag
字段。
{"value":"\"social data\" @XDevelopers","tag":"RULE-TAG-01"}
API 请求的格式
通过 API 在 stream 中添加或删除规则时,多个 JSON 格式的规则应使用逗号分隔,并放入一个 JSON “rules” 数组中,如下所示:
{"rules":[{"value":"from:XDevelopers"},{"value":"\"social data\" @XDevelopers","tag":"RULE-TAG-01"}]}
匹配 Quote Tweets 的运算符
Keywords
Phrases
Proximity
#hashtags
@mentions
$cashtags
url:
url_contains:
has:links
has:mentions
has:hashtags
has:media
has:symbols
is:quote
is:reply
Enterprise 运算符
操作符 | 描述 |
---|---|
keyword | 匹配 Post 文本正文或 URL 中的关键词。关键词必须以数字 (0-9) 或任何非标点符号字符开头。 关键词匹配采用分词方式,即关键词与 Post 正文的分词文本进行匹配。 对于包含标点符号的字符串(例如,“coca-cola”),请使用带引号的”精确短语匹配”。 示例: (social OR pizza OR wildfire) -planet |
emoji | 匹配 Post 正文中的表情符号,基于标点符号、符号/表情符号和分隔符字符进行分词匹配。 如果表情符号有变体,请使用引号进行精确匹配。 示例: (🍕 OR 💜 OR 🐢) -🤖 |
”exact phrase match” | 匹配 Post 正文中的精确短语。标点符号被视为空白字符。 示例: ("social media" OR "developer.x.com" OR "wildfire911" OR "coca-cola") -"planet earth" |
# | 匹配包含指定话题标签的任何 Post。这是精确匹配,即 #2016 将匹配包含 #2016 的 Post,但不匹配 #2016election 。示例: (#social OR #pizza OR #2016election) -#planet |
@ | 匹配提及指定用户名的任何 Post。 示例: (@XDevelopers OR @api OR @twittereng) -@jack |
”keyword1 keyword2”~N | 邻近操作符,匹配关键词在彼此 N 个标记范围内的 Post。 反向顺序的关键词相距不能超过 N-2 个标记。N 不能大于 6。 示例: "social media"~5 OR "API"~3 |
contains: | 对正文中包含指定子字符串的 Post 进行子字符串匹配,不考虑分词。 对包含空白字符或标点符号的子字符串请使用双引号。 示例: (contains:social OR contains:"wikipedia.com") -contains:"buy now" |
from: | 匹配来自特定用户的任何 Post,通过 X 数字账户 ID 或用户名(不包括 @ )指定。示例: (from:2244994945 OR from:api OR from:twittereng) -from:jack |
to: | 匹配回复特定用户的任何 Post,通过 X 数字账户 ID 或用户名(不包括 @ )指定。示例: (to:2244994945 OR to:api OR to:twittereng) -to:jack |
url: | 对 Post 的展开 URL 执行分词(关键词/短语)匹配。 示例: @XDevelopers url:"developer.x.com" |
url_title: | 对展开 URL 的 HTML 标题 metadata 执行关键词/短语匹配。 仅适用于 PowerTrack 和 Historical PowerTrack。 |
url_description: | 对展开页面描述 metadata 执行关键词/短语匹配。 仅适用于 PowerTrack 和 Historical PowerTrack。 |
url_contains: | 匹配 URL 中包含指定短语或关键词的 Post。 请将包含标点符号的搜索词用引号括起来。 示例: (url_contains:"developer.x.com" OR url_contains:wildfire) -url_contains:reddit |
bio: | 匹配 Post 用户简介中的关键词或短语。这是对用户对象中 ‘description’ 字段的分词匹配。 示例: (bio:engineer OR bio:"wordpress.com" OR bio:🚀) -bio:troll 注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
bio_name: | 匹配 Post 用户简介名称中的关键词。这是对用户对象中用户 “name” 字段的分词匹配。 注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
bio_location: | 匹配用户对象位置包含指定关键词或短语的 Post。 此操作符执行分词匹配,类似于消息正文上的普通关键词规则。 此位置是用户对象的一部分,是账户的主页位置。 注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
statuses_count: | 当作者发布的状态数量在给定范围内时匹配 Post。 如果指定单个数字,任何等于或更高的数字都将匹配。 可以指定范围来匹配范围内的任何数字(例如, statuses_count:1000..10000 )。示例: to:api statuses_count:10 注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
followers_count: | 当作者的关注者数量在给定范围内时匹配 Post。 如果指定单个数字,任何等于或更高的数字都将匹配。 可以指定范围来匹配范围内的任何数字(例如, followers_count:1000..10000 )。注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
friends_count: | 当作者的关注数量(他们关注的用户数量)在给定范围内时匹配 Post。 如果指定单个数字,任何等于或更高的数字都将匹配。 可以指定范围来匹配范围内的任何数字(例如, friends_count:1000..10000 )。注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
listed_count: | 当作者在 X 中被列入列表的次数在给定范围内时匹配 Post。 如果指定单个数字,任何等于或更高的数字都将匹配。 可以指定范围来匹配范围内的任何数字(例如, listed_count:10..100 )。注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
$ | 匹配包含指定 ‘cashtag’ 实体的任何 Post。 示例: ($TWTR OR $TSLA OR $BRK.A) -$F 注意: cashtag 操作符依赖于 X 的 ‘symbols’ 实体提取来匹配 cashtag,而不是从正文本身提取。 |
retweets_of: | 匹配指定用户的转发 Post。 接受用户名和数字 X 账户 ID(不是 Post 状态 ID)。 示例: (retweets_of:2244994945 OR retweets_of:api OR retweets_of:twittereng) -retweets_of:jack |
retweets_of_status_id: | 仅返回指定 Post 的显式转发。使用原始 Post 的 ID,而不是转发的 ID。 示例: retweets_of_status_id:1293593516040269825 注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
in_reply_to_status_id: | 仅返回对指定 Post 的显式回复。 示例: in_reply_to_status_id:1293593516040269825 注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
sample: | 返回匹配规则的 Post 的随机样本。样本百分比必须是 1 到 100 之间的整数。 操作符将范围缩小到 X%,然后将规则/过滤器应用于该采样子集。 示例: #happybirthday sample:5 "happy birthday"~5 sample:80 注意: 仅适用于 PowerTrack 和 Historical PowerTrack。 |
source: | 匹配由指定源应用程序生成的任何 Post。值可以是应用程序名称或应用程序的 URL。 示例: #happybirthday source:"X for iPhone" "This is a test X from my TestingApp" source:MyTestAppName 注意: source 操作符搜索 Post 源属性,不能单独使用。 |
lang: | 匹配被 X 分类为特定语言的 Post。Post 目前只被分类为一种语言,因此匹配多种语言不会产生结果。不建议单独使用。 |
阿姆哈拉语: am | 德语: de | 马拉雅拉姆语: ml | 斯洛伐克语: sk |
阿拉伯语: ar | 希腊语: el | 迪维希语(马尔代夫语): dv | 斯洛文尼亚语: sl |
亚美尼亚语: hy | 古吉拉特语: gu | 马拉地语: mr | 索拉尼库尔德语: ckb |
巴斯克语: eu | 海地克里奥尔语: ht | 尼泊尔语: ne | 西班牙语: es |
孟加拉语: bn | 希伯来语: iw | 挪威语: no | 瑞典语: sv |
波斯尼亚语: bs | 印地语: hi | 奥里亚语(奥迪亚语): or | 他加禄语: tl |
保加利亚语: bg | 拉丁化印地语: hi-Latn | 旁遮普语: pa | 泰米尔语: ta |
缅甸语: my | 匈牙利语: hu | 普什图语: ps | 泰卢固语: te |
克罗地亚语: hr | 冰岛语: is | 波斯语: fa | 泰语: th |
加泰罗尼亚语: ca | 印度尼西亚语: in | 波兰语: pl | 藏语: bo |
捷克语: cs | 意大利语: it | 葡萄牙语: pt | 繁体中文: zh-TW |
丹麦语: da | 日语: ja | 罗马尼亚语: ro | 土耳其语: tr |
荷兰语: nl | 卡纳达语: kn | 俄语: ru | 乌克兰语: uk |
英语: en | 高棉语: km | 塞尔维亚语: sr | 乌尔都语: ur |
爱沙尼亚语: et | 韩语: ko | 简体中文: zh-CN | 维吾尔语: ug |
芬兰语: fi | 老挝语: lo | 信德语: sd | 越南语: vi |
法语: fr | 拉脱维亚语: lv | 僧伽罗语: si | 威尔士语: cy |
格鲁吉亚语: ka | 立陶宛语: lt |
操作符 | 描述 |
---|---|
place | 匹配标记了指定位置或 X 地点 ID 的 Post。 多词地点名称应用引号括起来。 示例: (place:London OR place:"Great Britain") -place:USA place:fd70c22040963ac7 注意: 请参阅 GET geo/search 公共 API endpoint 了解如何获取 X 地点 ID。 注意: 不会匹配转发或引用 Tweet,因为转发的地点信息附加到原始 Post 上。 |
place_country | 匹配与标记地点/位置关联的国家代码与给定 ISO alpha-2 字符代码匹配的 Post。 示例: place_country:GB OR place_country:AU OR place_country:CA 注意: 不会匹配转发或引用 Tweet,因为转发的地点信息附加到原始 Post 上。 有效的 ISO 代码:ISO 3166-1 alpha-2。 |
point_radius:[lon lat radius] | 匹配 Post 的精确位置 (x,y) 或定义半径内的”地点”地理多边形。 _ 半径:< 25mi _ 支持的单位:mi, km _ 经度:±180 _ 纬度:±90 坐标为十进制度数。 参数用方括号括起来,以空格分隔。 示例: point_radius:[-105.27346517 40.01924738 0.5mi] 示例: point_radius:[2.355128 48.861118 16km] 注意: 不会匹配转发或引用 Tweet。 |
bounding_box:[west_long south_lat east_long north_lat] | 匹配完全包含在边界框内的精确位置或”地点”地理多边形。 参数用方括号括起来,以空格分隔。 坐标:十进制度数(±180 经度,±90 纬度)。 宽度和高度必须 < 25mi。 示例: bounding_box:[-105.301758 39.964069 -105.178505 40.09455] 注意: 不会匹配转发或引用 Tweet。 |
profile_country | 匹配作者个人资料地理国家代码与给定 ISO-3166-1-alpha-2 两字母代码匹配的 Post。 |
profile_region | 匹配作者个人资料地理增强信息中的”region”字段,进行精确完整字符串匹配。 对于包含空格或标点符号的子字符串,请使用双引号。 示例: profile_region:"New York" |
profile_locality | 匹配作者个人资料地理增强信息中的”locality”字段,进行精确完整字符串匹配。 对于包含空格或标点符号的子字符串,请使用双引号。 示例: profile_locality:"San Francisco" |
profile_subregion | 匹配作者个人资料地理增强信息中的”subRegion”字段,包括特定县或都市区。 进行精确完整字符串匹配。 示例: profile_subregion:"Santa Clara County" |
has:geo | 匹配具有来自 X 的 Post 特定地理位置数据的 Post,包括”geo”经纬度或带有显示名称和地理多边形的”地点”位置数据。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
has:profile_geo | 匹配具有任何个人资料地理 metadata 的 Post,无论值如何。 可用别名: has:derived_user_geo 。注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
has:links | 匹配在载荷的”text”对象中包含链接或引用媒体的 Post,包括媒体和引用 Tweet。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
is:retweet | 仅返回明确的转发。可以否定以排除转发并仅返回原创内容。 此操作符仅查找真正的转发,而不是引用 Tweet。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
is:reply | 仅返回明确的回复。可以否定以排除回复。 PowerTrack 匹配对原始 Post 的回复、引用 Post 中的回复和转发中的回复。 Search API 仅匹配对原始 Post 的回复。 示例: @XDevelopers -is:reply |
is:quote | 仅返回引用 Tweet 或引用另一个 Post 的 Post。 可以否定以排除引用 Tweet。 示例: @XDevelopers is:quote |
is:verified | 仅返回来自”已验证”作者的 Post。可以否定以排除来自已验证作者的 Post。 示例: @XDevelopers is:verified |
has:mentions | 匹配提及另一个 X 用户的 Post。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
has:hashtags | 匹配包含话题标签的 Post。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
has:media | 匹配包含由 X 分类的媒体 url 的 Post(例如,pic.x.com)。 可用别名: has:media_link 。注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
has:images | 匹配包含媒体 url 的 Post(例如,pic.x.com)。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
has:videos | 匹配包含上传到 X 的原生 X 视频的 Post。 可用别名: has:video_link 。此操作符不匹配来自 YouTube、Periscope 或其他视频托管网站的视频。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
has:symbols | 匹配包含现金标签符号的 Post(例如,$TWTR)。 注意: 在 Search API 中,必须与非 is: 或 has: 操作符结合使用。 |
按产品分类的操作符
规则与筛选:Enterprise
操作符 | 产品 | 描述 | 匹配的载荷元素 |
---|---|---|---|
”精确短语匹配” | PowerTrack Search | 匹配Post正文中的精确短语。 可以转换为搜索操作符的组件将被视为单词。换句话说: _ "#hashtag" 将匹配 hashtag 但不匹配 #hashtag (使用不带引号的hashtag操作符来匹配实际的hashtag) _ "$TWTR" 将匹配单词 TWTR 但不匹配cashtag $TWTR (使用不带引号的cashtag操作符来匹配实际的cashtag)注意: 在30天搜索和完整存档搜索(Enterprise和Premium)中,标点符号不会被标记化,而是被视为空白字符。 | text |
@ | PowerTrack Search | 匹配任何提及给定用户名的Post。该值可以是用户名(不包括 @ 字符)或用户的数字ID(例如通过GET users/lookup endpoint获得)。 | entities.user_mentions |
# | PowerTrack Search | 匹配任何包含给定hashtag的Post。 此操作符执行精确匹配。例如,规则 #1989 将匹配包含精确hashtag #1989 的Post,但不匹配包含hashtag #TaylorSwift1989 的Post。注意: 此操作符依赖于X的实体提取来匹配hashtag,而不是从正文本身提取hashtag。有关实体JSON属性的更多详细信息,请参阅X Entities。 | entities.hashtags |
$ | PowerTrack Search | 匹配任何包含指定cashtag(其中标记的前导字符为 $ )的Post。注意: 此操作符依赖于X的实体提取来匹配cashtag,而不是从正文本身提取cashtag。有关实体JSON属性的更多详细信息,请参阅X Entities。 | entities.symbols |
bio: | PowerTrack | 可用别名:user_bio: 匹配Post用户简介中的关键词(使用标记化匹配)或短语。使用双引号匹配短语。换句话说: _ bio:software engineer 将匹配来自简介中包含单词 software 的用户发布的包含关键词 engineer 的Post_ bio:"software engineer" 将匹配任何由简介中包含短语 software engineer 的用户发布的Post | user.description |
bio_location: | PowerTrack | 可用别名:user_bio_location: 匹配用户对象的位置包含指定关键词(使用标记化匹配)或短语的Post。 此位置是一个非标准化的、用户生成的自由格式字符串,与Post的位置(如果可用)不同。 | user.location |
bio_name: | PowerTrack | 匹配用户对象的姓名包含指定关键词(使用标记化匹配)或短语的Post。 | user.name |
bounding_box: | PowerTrack Search | 可用别名:geo_bounding_box: 匹配Post的精确位置(经度,纬度)(如果存在),以及地理多边形(其中地点完全包含在定义区域内)。 _ west_long south_lat 表示边界框的西南角,其中west-long是该点的经度,south_lat是纬度。 _ east_long和north_lat表示边界框的东北角,其中east_long是该点的经度,north_lat是纬度。 _ 边界框的宽度和高度必须小于25英里 _ 经度范围为±180 _ 纬度范围为±90 _ 所有坐标均为十进制度数。 * 规则参数包含在方括号内,以空格分隔。 注意: 匹配地点(Post地理位置)的操作符仅包括来自原始Post的匹配。转发不包含任何地点数据。 | place (仅限原始Post) |
contains: | PowerTrack | 对正文中包含给定子字符串的Post进行子字符串匹配,不考虑标记化。换句话说,这执行纯子字符串匹配,不考虑单词边界。 使用双引号匹配包含空白字符或标点符号的子字符串。 | text |
<emoji> | PowerTrack Search | 匹配Post正文中的表情符号。 这是一个标记化匹配,因此您的表情符号将与Post正文的标记化文本进行匹配。标记化基于标点符号、符号/表情符号和分隔符Unicode基本平面字符。例如,包含文本”I like 🍕“的Post将被分割为以下标记:I、like、🍕。然后将这些标记与您规则中使用的表情符号进行比较。 注意: 如果表情符号有变体,您必须使用双引号将其添加到规则中。 | text |
followers_count: | PowerTrack | 当作者的关注者数量在给定范围内时匹配Post。 _ 单个数字(例如 followers_count:42 )将匹配等于或大于指定值的任何数字。_ 范围(例如 followers_count:42..1337 )将匹配给定范围内的任何数字。 | user.followers_count |
friends_count: | PowerTrack | 可用别名:following_count: 当作者的好友数量(他们关注的用户数量)在给定范围内时匹配Post。 _ 单个数字(例如 friends_count:42 )将匹配等于或大于指定值的任何数字。_ 范围(例如 friends_count:42..1337 )将匹配给定范围内的任何数字。 | user.friends_count |
from: | PowerTrack Search | 匹配来自特定用户的任何Post。该值可以是用户名(不包括 @ 字符)或用户的数字ID(例如通过GET users/lookup endpoint获得)。 | user.id 、user.id_str (如果使用用户ID)user.screen_name (如果使用用户名) |
has:geo | PowerTrack Search | 匹配具有X提供的Post特定地理位置数据的Post。这可以是”geo”经纬度坐标,或者是X Place形式的”location”,包含相应的显示名称、地理多边形和其他字段。 不能作为独立操作符使用。 注意: 匹配地点(Post地理位置)的操作符仅包括来自原始Post的匹配。转发不包含任何地点数据。 | place (仅限原始Tweet) |
has:hashtags | PowerTrack Search | 匹配包含至少一个话题标签的 Post。 不能作为独立操作符使用。 | entities.hashtags |
has:images | PowerTrack Search | 匹配包含至少一个已分类图片 URL 的 Post。 不能作为独立操作符使用。 | entities.media |
has:lang | PowerTrack | 匹配已被 X 分类为特定语言的 Post。 如果 Post 未被分类,该操作符将不会匹配。每个 Post 目前只被分类为一种语言,因此对多种语言进行 AND 操作将不会产生结果。 不能作为独立操作符使用。 | lang when value is not und |
has:links | PowerTrack Search | 此操作符匹配在 Post 正文中包含链接的 Post。 不能作为独立操作符使用。 注意: 此操作符依赖 X 的实体提取来匹配链接,而不是从正文本身提取链接。有关实体 JSON 属性的更多详细信息,请参阅 X Entities。 | entities.urls |
has:media | PowerTrack Search | 可用别名:has:media_link 匹配包含至少一个已分类媒体 URL 的 Post。 不能作为独立操作符使用。 | entities.media |
has:mentions | PowerTrack Search | 匹配提及其他 X 用户的 Post。 不能作为独立操作符使用。 | entities.user_mentions |
has:profile_geo | PowerTrack Search | 可用别名:has:derived_user_geo 匹配具有任何 Profile Geo metadata 的 Post,无论实际值如何。 不能作为独立操作符使用。 | user.location |
has:symbols | PowerTrack Enterprise | 匹配包含股票代码符号(例如 $TWTR )的 Post。不能作为独立操作符使用。 | entities.symbols |
has:videos | PowerTrack Search | 可用别名:has:video_link 匹配包含至少一个已分类媒体 URL 的 Post。 不能作为独立操作符使用。 | entities.media |
in_reply_to_status_id: | PowerTrack | 可用别名:in_reply_to_tweet_id: 仅传递对指定 Post 的明确回复。 | id , id_str of the target Post |
is:quote | PowerTrack | 传递匹配规则的明确引用 Tweet。 也可以被否定( -is:quote )以排除匹配规则的引用 Tweet 的传递。不能作为独立操作符使用。 | is_quote_status (if true ) |
is:reply | PowerTrack Search | 仅传递匹配规则的回复。 也可以被否定( -is:reply )以排除匹配指定规则的回复的传递。使用 PowerTrack 时,此操作符匹配: * 对原始 Post 的回复 * 引用 Post 中的回复 * 转发中的回复 与 Search API 一起使用时,此操作符匹配对原始 Post 的回复,但排除引用 Tweet 中的回复和转发中的回复。 您可以将此操作符与 is:retweet 和 is:quote 结合使用,以仅传递对原始 Post 的回复。与 Search API 一起使用时不能作为独立操作符使用。 注意:对于 Premium,此操作符在 Sandbox 开发环境中不可用。 | Reply elements, e.g. in_reply_to_status_id |
is:retweet | PowerTrack Search | 仅传递匹配规则的明确转发。 也可以被否定( -is:retweet )以排除匹配规则的转发的传递,仅传递原创内容。此操作符仅查找真正的转发(即使用转发按钮发布的转发)。引用 Tweet 和不使用 X 转发功能的修改 Post 不会被此操作符匹配。 不能作为独立操作符使用。 | Retweet elements, e.g. retweeted_status |
is:verified | PowerTrack Search | 仅传递作者已被 X 验证的 Post。 也可以被否定以排除作者已验证的 Post。 不能作为独立操作符使用。 | user.verified |
keyword | PowerTrack Search | 匹配 Post 正文中的关键词。 这是一个分词匹配,意味着您的关键词字符串将与 Post 正文的分词文本进行匹配。分词基于标点符号、符号/表情符号和分隔符 Unicode 基本平面字符。例如,包含文本”I like coca-cola”的 Post 将被分割为以下词元: I 、like 、coca 、cola 。然后将这些词元与您规则中使用的关键词字符串进行比较。要匹配包含标点符号(例如 coca-cola)、符号或分隔符字符的字符串,您必须使用精确短语匹配操作符。 | text |
lang: | PowerTrack Search | 匹配已被 X 分类为特定语言的 Post(当且仅当该 Post 已被分类时)。每个 Post 只会被分类为一种语言,因此将多种语言进行 AND 操作将不会产生任何结果。 **注意:**如果无法进行语言分类,提供的结果是 und (表示未定义)。此操作符只会匹配支持的语言。提供任何其他值(包括 und )将导致操作符被忽略(换句话说,Post 不会被此操作符过滤)。下面的列表表示当前支持的语言及其对应的 BCP 47 语言标识符:am 阿姆哈拉语hu 匈牙利语pt 葡萄牙语ar 阿拉伯语is 冰岛语ro 罗马尼亚语hy 亚美尼亚语in 印度尼西亚语ru 俄语bn 孟加拉语it 意大利语sr 塞尔维亚语bg 保加利亚语ja 日语sd 信德语my 缅甸语kn 卡纳达语si 僧伽罗语zh 中文km 高棉语sk 斯洛伐克语cs 捷克语ko 韩语sl 斯洛文尼亚语da 丹麦语lo 老挝语ckb 索拉尼库尔德语nl 荷兰语lv 拉脱维亚语es 西班牙语en 英语lt 立陶宛语sv 瑞典语et 爱沙尼亚语ml 马拉雅拉姆语tl 他加禄语fi 芬兰语dv 马尔代夫语ta 泰米尔语fr 法语mr 马拉地语te 泰卢固语ka 格鲁吉亚语ne 尼泊尔语th 泰语de 德语no 挪威语bo 藏语el 希腊语or 奥里亚语tr 土耳其语gu 古吉拉特语pa 旁遮普语uk 乌克兰语ht 海地语ps 普什图语ur 乌尔都语iw 希伯来语fa 波斯语ug 维吾尔语hi 印地语pl 波兰语vi 越南语cy 威尔士语 | lang 当值不是 und 时 |
listed_count: | PowerTrack | 可用别名:user_in_lists_count 匹配作者在 X 上被列入 List 的次数在给定范围内的 Post。 _ 单个数字(例如 listed_count:42 )将匹配等于或大于指定值的任何数字。_ 范围(例如 listed_count:42..1337 )将匹配给定范围内的任何数字。 | user.listed_count |
place_country: | PowerTrack Search | 匹配与标记的地点/位置关联的国家代码与给定的 ISO alpha-2 字符代码匹配的 Post。 **注意:**匹配地点(Post 地理位置)的操作符只会包含来自原始 Post 的匹配。转发不包含任何地点数据。 | place (仅限原始 Post) |
place: | PowerTrack Search | 匹配标记有指定位置或 X 地点 ID 的 Post。多词地点名称应用引号括起来(例如 place:"San Francisco" )**注意:**匹配地点(Post 地理位置)的操作符只会包含来自原始 Post 的匹配。转发不包含任何地点数据。 | place (仅限原始 Post) |
point_radius: | PowerTrack Search | **注意:**匹配地点(Post 地理位置)的操作符只会包含来自原始 Post 的匹配。转发不包含任何地点数据。 | place (仅限原始 Post) |
profile_bounding_box:[west_long south_lat east_long north_lat] | PowerTrack | 匹配用户在个人资料地理位置增强中的精确位置(经度,纬度),其中地点完全包含在定义的区域内。 _ west_long south_lat 表示边界框的西南角,其中 west-long 是该点的经度,south_lat 是纬度。 _ east_long 和 north_lat 表示边界框的东北角,其中 east_long 是该点的经度,north_lat 是纬度。 _ 边界框的宽度和高度必须小于 25 英里 _ 经度范围为 ±180 _ 纬度范围为 ±90 _ 所有坐标均为十进制度数。 * 规则参数包含在方括号内,以空格分隔。 **注意:**匹配地点(Post 地理位置)的操作符只会包含来自原始 Post 的匹配。转发不包含任何地点数据。 | user.derived.locations.geo.coordinates |
profile_country: | PowerTrack Search | 精确匹配来自个人资料地理位置增强的国家代码。 使用基于 ISO-3166-1-alpha-2 规范的标准化两字母国家代码集。 为了简洁起见,提供此操作符来代替地址对象中国家字段的操作符。 **注意:**匹配地点(Post 地理位置)的操作符只会包含来自原始 Post 的匹配。转发不包含任何地点数据。 | user.derived.locations.country_code |
profile_locality: | PowerTrack Search | 精确匹配来自个人资料地理位置增强的地区字段。 这是精确的完整字符串匹配。 不需要用反斜杠转义字符。例如,如果匹配包含斜杠的内容,请使用 one/two 。使用双引号匹配包含空格或标点符号的子字符串,例如 profile_locality:"Lower East Side" 。 | user.derived.locations.locality |
profile_point_radius:[lon lat radius] | PowerTrack | 匹配用户个人资料地理位置增强的精确位置(x,y)。 _ 支持的半径单位为英里(mi)和公里(km)。 _ 半径必须小于 25 英里。 _ 经度范围为 ±180 _ 纬度范围为 ±90 _ 所有坐标均为十进制度数。 _ 规则参数包含在方括号内,以空格分隔。 **注意:**匹配地点(Post 地理位置)的操作符只会包含来自原始 Post 的匹配。转发不包含任何地点数据。 | user.derived.locations.geo |
profile_region: | PowerTrack Search | 对Profile Geo enrichment中的Region字段进行精确匹配。 这是完整字符串的精确匹配。 无需使用反斜杠转义字符。例如,匹配包含斜杠的内容时,使用 one/two 。使用双引号匹配包含空格或标点符号的子字符串,例如 profile_locality:"New York" 。 | user.derived.locations.region |
profile_subregion: | PowerTrack | 对Profile Geo enrichment中的Subregion字段进行精确匹配。 这是完整字符串的精确匹配。 无需使用反斜杠转义字符。例如,匹配包含斜杠的内容时,使用 one/two 。使用双引号匹配包含空格或标点符号的子字符串,例如 profile_locality:"Kings County" 。 | user.derived.locations.sub_region |
”keyword1 keyword2”~N | PowerTrack Search | 通常称为邻近操作符,匹配关键词之间距离不超过N个词元的Post。 如果关键词顺序相反,它们之间的距离不能超过N-2个词元。 引号中可以包含任意数量的关键词。 N不能大于6。 | text |
retweets_of_status_id: | PowerTrack | 可用别名:retweets_of_tweet_id: 仅返回指定原始Post的显式转发。 | retweeted_status.id , retweeted_status.id_str |
retweets_of: | PowerTrack Search | 可用别名:retweets_of_user: 匹配指定用户的任何转发Post。值可以是用户名(不包括 @ 字符)或用户的数字ID(例如通过GET users/lookup endpoint获取)。 | retweeted_status.id (if present) |
sample: | PowerTrack | 返回匹配规则的Post的随机百分比样本,而非完整的Post集合。百分比值必须用1到100之间的整数表示。 此操作符适用于整个规则,需要将所有OR条件进行分组。 **注意:**sample操作符首先将数据流范围缩减到X%,然后对该采样子集应用规则/过滤器。例如,如果您使用 sample:10 ,每个Post有10%的概率被包含在样本中。**注意:**采样是确定性的,您实时获取的数据样本与历史拉取的数据样本相同。 | |
source: | PowerTrack | 匹配由指定源应用程序生成的任何Post。值必须是应用程序的名称或应用程序的URL。 不能作为独立操作符使用。 | source |
statuses_count: | PowerTrack | 可用别名:tweets_count: 当作者发布的状态数量在给定范围内时匹配Post。 _ 单个数字(例如 statuses_count:42 )将匹配等于或大于指定值的任何数字。_ 范围(例如 statuses_count:42..1337 )将匹配给定范围内的任何数字。 | user``.statuses_count |
to: | PowerTrack Search | 匹配回复特定用户的任何Post。值可以是用户名(不包括@ 字符)或用户的数字ID(例如通过GET users/lookup endpoint获取)。 | text |
url: | PowerTrack Search | 对Post的展开URL执行词元化匹配。包含标点符号或特殊字符的词元和短语应使用双引号(例如url:"/developer" )。虽然通常不推荐,但该操作符也可以匹配特定协议,需用双引号括起来(例如 url:"https://developer.x.com" )。 | entities.urls.expanded_url |
url_contains: | PowerTrack | 对(新的)expanded URL title metadata enrichment执行关键词/短语匹配。 | entities.urls.expanded_url |
url_description: | PowerTrack | 可用别名:within_url_description: 对(新的)expanded page description metadata enrichment执行关键词/短语匹配。 | entities.urls.unwound.description |
url_title: | PowerTrack | 可用别名:within_url_title: 对(新的)expanded URL title metadata enrichment执行关键词/短语匹配。 | entities.urls.title |