finding-twitter-spaces-hosts-by-topic
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseFinding 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
前提条件
- environment variable set
APIFY_TOKEN - Optional: Apify MCP server installed
- 环境变量已设置
APIFY_TOKEN - 可选:已安装Apify MCP服务器
Inputs
输入参数
| Parameter | Type | Required | Default | Notes |
|---|---|---|---|---|
| array | ✅ | | Twitter advanced search queries (e.g. |
| string | Optional | | Sort order: |
| string | Optional | — | ISO 639-1 language code (e.g. |
| number | Optional | Unlimited | Maximum tweets to return |
| boolean | Optional | | Only tweets from verified users |
| boolean | Optional | | Only Twitter Blue subscribers |
| boolean | Optional | | Only tweets with images |
| boolean | Optional | | Only tweets with videos |
| boolean | Optional | | Only quote tweets |
| string | Optional | — | Filter to a specific author handle |
| string | Optional | — | Tweets replying to a specific handle |
| string | Optional | — | Tweets mentioning a specific handle |
| string | Optional | — | Tweets near a location |
| string | Optional | — | Radius around geotaggedNear |
| string | Optional | — | Lat/lng + radius string |
| string | Optional | — | Tweets tagged with a place |
| number | Optional | — | Minimum retweet count |
| number | Optional | — | Minimum like count |
| number | Optional | — | Minimum reply count |
| string | Optional | — | Tweets after this date (YYYY-MM-DD) |
| string | Optional | — | Tweets before this date (YYYY-MM-DD) |
| boolean | Optional | | Add the matched search term to each tweet |
| string | Optional | — | JavaScript function to transform each output object |
| 参数 | 类型 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|---|
| 数组 | ✅ | | Twitter高级搜索查询语句(例如 |
| 字符串 | 可选 | | 排序方式: |
| 字符串 | 可选 | — | ISO 639-1语言代码(例如 |
| 数字 | 可选 | 无限制 | 最多返回的推文数量 |
| 布尔值 | 可选 | | 仅返回已认证用户的推文 |
| 布尔值 | 可选 | | 仅返回Twitter Blue订阅用户的推文 |
| 布尔值 | 可选 | | 仅返回带图片的推文 |
| 布尔值 | 可选 | | 仅返回带视频的推文 |
| 布尔值 | 可选 | | 仅返回引用推文 |
| 字符串 | 可选 | — | 筛选特定作者账号的推文 |
| 字符串 | 可选 | — | 筛选回复特定账号的推文 |
| 字符串 | 可选 | — | 筛选提及特定账号的推文 |
| 字符串 | 可选 | — | 筛选地理位置附近的推文 |
| 字符串 | 可选 | — | |
| 字符串 | 可选 | — | 纬度/经度 + 半径字符串 |
| 字符串 | 可选 | — | 筛选标记特定地点的推文 |
| 数字 | 可选 | — | 最低转发量 |
| 数字 | 可选 | — | 最低点赞量 |
| 数字 | 可选 | — | 最低回复量 |
| 字符串 | 可选 | — | 此日期之后的推文(格式:YYYY-MM-DD) |
| 字符串 | 可选 | — | 此日期之前的推文(格式:YYYY-MM-DD) |
| 布尔值 | 可选 | | 在每条推文中添加匹配的搜索词 |
| 字符串 | 可选 | — | 用于转换每个输出对象的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
undefinedQuick answer (prints table to chat)
快速查看结果(在聊天窗口打印表格)
node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
node scripts/run_actor.js
--actor "apidojo~tweet-scraper"
--input '{"param": "value"}'
--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
--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
--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
--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 . Fetch dataset:
SUCCEEDEDbash
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
--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}'等待任务状态变为。获取数据集:
SUCCEEDEDbash
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.25score = 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.25Step 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
输出格式
undefinedundefinedFinding 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最佳结果:[描述]
关键发现:[洞察]
undefinedTroubleshooting
故障排除
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状态。