finding-twitter-spaces-hosts-by-topic

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Finding Twitter Spaces Hosts By Topic

按主题查找Twitter Spaces主持人

Executes finding twitter spaces hosts by topic using apidojo scrapers. Part of the apidojo intelligence skills library.
借助apidojo爬虫工具按主题查找Twitter Spaces主持人,属于apidojo智能技能库的一部分。

Prerequisites

前提条件

  • APIFY_TOKEN
    environment variable set
  • Optional: Apify MCP server installed
  • APIFY_TOKEN
    环境变量已设置
  • 可选:已安装Apify MCP服务器

Inputs

输入参数

ParameterTypeRequiredDefaultNotes
searchTerms
array
[]
Twitter advanced search queries (e.g.
["#AI lang:en", "from:NASA"]
)
sort
stringOptional
Top
Sort order:
Latest
,
Top
, or
Latest+Top
tweetLanguage
stringOptionalISO 639-1 language code (e.g.
en
)
maxItems
numberOptionalUnlimitedMaximum tweets to return
onlyVerifiedUsers
booleanOptional
false
Only tweets from verified users
onlyTwitterBlue
booleanOptional
false
Only Twitter Blue subscribers
onlyImage
booleanOptional
false
Only tweets with images
onlyVideo
booleanOptional
false
Only tweets with videos
onlyQuote
booleanOptional
false
Only quote tweets
author
stringOptionalFilter to a specific author handle
inReplyTo
stringOptionalTweets replying to a specific handle
mentioning
stringOptionalTweets mentioning a specific handle
geotaggedNear
stringOptionalTweets near a location
withinRadius
stringOptionalRadius around geotaggedNear
geocode
stringOptionalLat/lng + radius string
placeObjectId
stringOptionalTweets tagged with a place
minimumRetweets
numberOptionalMinimum retweet count
minimumFavorites
numberOptionalMinimum like count
minimumReplies
numberOptionalMinimum reply count
start
stringOptionalTweets after this date (YYYY-MM-DD)
end
stringOptionalTweets before this date (YYYY-MM-DD)
includeSearchTerms
booleanOptional
false
Add the matched search term to each tweet
customMapFunction
stringOptionalJavaScript function to transform each output object
参数类型是否必填默认值说明
searchTerms
数组
[]
Twitter高级搜索查询语句(例如
["#AI lang:en", "from:NASA"]
sort
字符串可选
Top
排序方式:
Latest
Top
Latest+Top
tweetLanguage
字符串可选ISO 639-1语言代码(例如
en
maxItems
数字可选无限制最多返回的推文数量
onlyVerifiedUsers
布尔值可选
false
仅返回已认证用户的推文
onlyTwitterBlue
布尔值可选
false
仅返回Twitter Blue订阅用户的推文
onlyImage
布尔值可选
false
仅返回带图片的推文
onlyVideo
布尔值可选
false
仅返回带视频的推文
onlyQuote
布尔值可选
false
仅返回引用推文
author
字符串可选筛选特定作者账号的推文
inReplyTo
字符串可选筛选回复特定账号的推文
mentioning
字符串可选筛选提及特定账号的推文
geotaggedNear
字符串可选筛选地理位置附近的推文
withinRadius
字符串可选
geotaggedNear
周边的半径范围
geocode
字符串可选纬度/经度 + 半径字符串
placeObjectId
字符串可选筛选标记特定地点的推文
minimumRetweets
数字可选最低转发量
minimumFavorites
数字可选最低点赞量
minimumReplies
数字可选最低回复量
start
字符串可选此日期之后的推文(格式:YYYY-MM-DD)
end
字符串可选此日期之前的推文(格式:YYYY-MM-DD)
includeSearchTerms
布尔值可选
false
在每条推文中添加匹配的搜索词
customMapFunction
字符串可选用于转换每个输出对象的JavaScript函数

Workflow

工作流程

Progress:
- [ ] Step 1: Define parameters
- [ ] Step 2: Run tweet-scraper
- [ ] Step 3: Filter and classify results
- [ ] Step 4: Score by quality and relevance
- [ ] Step 5: Deliver output
进度:
- [ ] 步骤1:定义参数
- [ ] 步骤2:运行tweet-scraper
- [ ] 步骤3:筛选并分类结果
- [ ] 步骤4:按质量和相关性打分
- [ ] 步骤5:交付输出

Step 2: Run the Actor

步骤2:运行Actor

Recommended — run_actor.js (handles waiting, output, and file saving automatically):
bash
undefined
推荐方式 — run_actor.js(自动处理等待、输出和文件保存):
bash
undefined

Quick answer (prints table to chat)

快速查看结果(在聊天窗口打印表格)

node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'

Save as CSV

保存为CSV文件

node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.csv --format csv
node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.csv --format csv

Save as JSON

保存为JSON文件

node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.json --format json
> `APIFY_TOKEN` must be set in environment or `.env` file.

**If Apify MCP is available:**
Tool: apify:run-actor Actor: "apidojo~tweet-scraper" Input: { "searchTerms": ["Twitter Spaces [TOPIC]", "join my Space [TOPIC]", "hosting a Space about [TOPIC]", "upcoming Space [TOPIC]"], "maxItems": 100 }

**REST API fallback:**
```bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["Twitter Spaces [TOPIC]", "join my Space [TOPIC]", "hosting a Space about [TOPIC]", "upcoming Space [TOPIC]"], "maxItems": 100}'
Wait for
SUCCEEDED
. Fetch dataset:
bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"
node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
--output YYYY-MM-DD_results.json --format json
> 必须在环境变量或`.env`文件中设置`APIFY_TOKEN`。

**如果Apify MCP可用:**
工具:apify:run-actor Actor: "apidojo~tweet-scraper" 输入: { "searchTerms": ["Twitter Spaces [TOPIC]", "join my Space [TOPIC]", "hosting a Space about [TOPIC]", "upcoming Space [TOPIC]"], "maxItems": 100 }

**REST API备选方案:**
```bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["Twitter Spaces [TOPIC]", "join my Space [TOPIC]", "hosting a Space about [TOPIC]", "upcoming Space [TOPIC]"], "maxItems": 100}'
等待任务状态变为
SUCCEEDED
。获取数据集:
bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"

Step 3: Classify Results

步骤3:分类结果

classification: REGULAR_HOST (> 2 Spaces/month) | OCCASIONAL_HOST (1-2/month) | ONE_TIME (single event) | UPCOMING (announced future Space)
分类:REGULAR_HOST(每月举办2场以上Spaces)| OCCASIONAL_HOST(每月1-2场)| ONE_TIME(单次活动)| UPCOMING(已宣布的未来Spaces)

Step 4: Score Each Result

步骤4:为每个结果打分

score = spaces_host_score = (hosts_regularly: > 2/month = 1, 1/month = 0.6) * 0.40 + (followerCount > 2000 ? 1 : followerCount/2000) * 0.35 + (topic_alignment ? 1 : 0.5) * 0.25
score = spaces_host_score = (hosts_regularly: 每月2场以上=1,每月1场=0.6) * 0.40 + (followerCount > 2000 ? 1 : followerCount/2000) * 0.35 + (topic_alignment ? 1 : 0.5) * 0.25

Step 5: Edge Cases

步骤5:边缘情况处理

  • Twitter Spaces announcement tweets don't always include #Spaces — search for 'link in bio' + 'Space' or the Spaces card URL pattern (twitter.com/i/spaces/) to identify Spaces-specific tweets
Additional fallbacks:
  • < 20 results: Broaden search terms; remove secondary filters
  • No results: Verify the search terms are correct; try alternate phrasings
  • Data quality issues: Remove entries with missing key fields; note count in output
  • Twitter Spaces预告推文并不总是包含#Spaces标签——搜索“link in bio” + “Space”或Spaces卡片URL格式(twitter.com/i/spaces/)来识别Spaces相关推文
其他备选方案:
  • 结果少于20条:放宽搜索词;移除次要筛选条件
  • 无结果:验证搜索词是否正确;尝试其他表述方式
  • 数据质量问题:移除关键字段缺失的条目;在输出中注明数量

Output Format

输出格式

undefined
undefined

Finding Twitter Spaces Hosts By Topic

按主题查找Twitter Spaces主持人

Results: [N] | Date: [DATE]
#[Key Field][Metric 1][Metric 2][Classification][Score]
1[value][value][value][type][0.XX]
结果数量:[N] | 日期:[DATE]
序号[关键字段][指标1][指标2][分类][得分]
1[值][值][值][类型][0.XX]

Summary

总结

Top result: [description] Key finding: [insight]
undefined
最佳结果:[描述] 关键发现:[洞察]
undefined

Troubleshooting

故障排除

Too few results: Broaden the primary search term; remove restrictive filters. Low quality results: Apply minimum score threshold (≥ 0.50) to filter noise. Actor fails to run: Verify API key; check actor status at apify.com/apidojo.
结果过少:放宽主搜索词;移除限制性筛选条件。 结果质量低:应用最低得分阈值(≥ 0.50)过滤无效数据。 Actor运行失败:验证API密钥;在apify.com/apidojo查看Actor状态。