twitter-search

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Twitter Search and Analysis

Twitter搜索与数据分析

Overview

概述

Search Twitter for keywords using advanced search syntax, fetch up to 1000 relevant tweets, and analyze the data to produce professional reports with insights, statistics, and actionable recommendations.
使用高级搜索语法在Twitter上搜索关键词,抓取最多1000条相关推文,并分析数据以生成包含洞察、统计信息和可执行建议的专业报告。

Prerequisites

前提条件

API Key Required: Users must configure their Twitter API key from https://twitterapi.io
The API key can be provided in three ways:
  1. Environment variable (recommended): Set
    TWITTER_API_KEY
    in your
    ~/.bashrc
    or
    ~/.zshrc
    bash
    echo 'export TWITTER_API_KEY="your_key_here"' >> ~/.bashrc
    source ~/.bashrc
  2. As an argument: Use
    --api-key YOUR_KEY
    with the wrapper script
  3. Passed directly: As first argument to the Python script
需要API密钥:用户需从https://twitterapi.io配置自己的Twitter API密钥
API密钥可通过三种方式提供:
  1. 环境变量(推荐):在
    ~/.bashrc
    ~/.zshrc
    中设置
    TWITTER_API_KEY
    bash
    echo 'export TWITTER_API_KEY="your_key_here"' >> ~/.bashrc
    source ~/.bashrc
  2. 作为参数:在包装脚本中使用
    --api-key YOUR_KEY
  3. 直接传递:作为Python脚本的第一个参数

Quick Start

快速开始

Using the Wrapper Script (Recommended)

使用包装脚本(推荐)

The wrapper script automatically handles environment variable loading and dependency checks:
bash
undefined
包装脚本会自动处理环境变量加载和依赖检查:
bash
undefined

Basic search (uses TWITTER_API_KEY from shell config)

基础搜索(使用shell配置中的TWITTER_API_KEY)

./scripts/run_search.sh "AI"
./scripts/run_search.sh "AI"

With custom API key

使用自定义API密钥

./scripts/run_search.sh "AI" --api-key YOUR_KEY
./scripts/run_search.sh "AI" --api-key YOUR_KEY

With options

带选项的搜索

./scripts/run_search.sh ""Claude AI"" --max-results 100 --format summary
./scripts/run_search.sh ""Claude AI"" --max-results 100 --format summary

Advanced query

高级查询

./scripts/run_search.sh "from:elonmusk since:2024-01-01" --query-type Latest
undefined
./scripts/run_search.sh "from:elonmusk since:2024-01-01" --query-type Latest
undefined

Direct Python Script Usage

直接使用Python脚本

bash
undefined
bash
undefined

Search for a keyword

搜索单个关键词

scripts/twitter_search.py "$API_KEY" "AI"
scripts/twitter_search.py "$API_KEY" "AI"

Search with multiple keywords

搜索多个关键词

scripts/twitter_search.py "$API_KEY" ""ChatGPT" OR "Claude AI""
scripts/twitter_search.py "$API_KEY" ""ChatGPT" OR "Claude AI""

Search from specific user

搜索特定用户的推文

scripts/twitter_search.py "$API_KEY" "from:elonmusk"
scripts/twitter_search.py "$API_KEY" "from:elonmusk"

Search with date range

按日期范围搜索

scripts/twitter_search.py "$API_KEY" "Bitcoin since:2024-01-01"
undefined
scripts/twitter_search.py "$API_KEY" "Bitcoin since:2024-01-01"
undefined

Advanced Queries

高级查询示例

bash
undefined
bash
undefined

Complex query: AI tweets from verified users, English only

复杂查询:来自认证用户的英文AI相关推文

scripts/twitter_search.py "$API_KEY" "AI OR "machine learning" lang:en filter:verified"
scripts/twitter_search.py "$API_KEY" "AI OR "machine learning" lang:en filter:verified"

Recent crypto tweets with minimum engagement

最近的、达到最低互动量的加密货币相关推文

scripts/twitter_search.py "$API_KEY" "Bitcoin min_retweets:10 lang:en"
scripts/twitter_search.py "$API_KEY" "Bitcoin min_retweets:10 lang:en"

From specific influencers

来自特定意见领袖的推文

scripts/twitter_search.py "$API_KEY" "from:elonmusk OR from:VitalikButerin since:2024-01-01"
undefined
scripts/twitter_search.py "$API_KEY" "from:elonmusk OR from:VitalikButerin since:2024-01-01"
undefined

Output Format

输出格式

bash
undefined
bash
undefined

Full JSON with all tweets

包含所有推文的完整JSON

scripts/twitter_search.py "$API_KEY" "AI" --format json
scripts/twitter_search.py "$API_KEY" "AI" --format json

Summary with statistics (default)

带统计信息的摘要(默认)

scripts/twitter_search.py "$API_KEY" "AI" --format summary
undefined
scripts/twitter_search.py "$API_KEY" "AI" --format summary
undefined

Options

可用选项

  • --max-results N
    : Maximum tweets to fetch (default: 1000)
  • --query-type Latest|Top
    : Sort order (default: Top for relevance)
  • --format json|summary
    : Output format (default: summary)
  • --max-results N
    :最多抓取的推文数量(默认:1000)
  • --query-type Latest|Top
    :排序方式(默认:Top,按相关性排序)
  • --format json|summary
    :输出格式(默认:summary)

Workflow

工作流程

1. Understand User Requirements

1. 理解用户需求

Clarify the analysis goal:
  • What topic/keyword to search?
  • Date range preference?
  • Specific users to include/exclude?
  • Language preference?
  • Type of insights needed (trends, sentiment, influencers)?
明确分析目标:
  • 需要搜索什么主题/关键词?
  • 是否有日期范围偏好?
  • 需要包含/排除特定用户吗?
  • 语言偏好?
  • 需要哪些类型的洞察(趋势、情感、意见领袖)?

2. Build the Search Query

2. 构建搜索查询语句

SyntaxExampleDescription
keyword
AI
Single keyword
"phrase"
"machine learning"
Exact phrase
OR
AI OR ChatGPT
Either term
from:user
from:elonmusk
From specific user
to:user
to:elonmusk
Reply to user
since:DATE
since:2024-01-01
After date
until:DATE
until:2024-12-31
Before date
lang:xx
lang:en
Language code
#hashtag
#AI
Hashtag
filter:links
filter:links
Tweets with links
min_retweets:N
min_retweets:100
Minimum retweets
使用Twitter高级搜索语法:
语法示例说明
keyword
AI
单个关键词
"phrase"
"machine learning"
精确短语
OR
AI OR ChatGPT
任一术语
from:user
from:elonmusk
来自特定用户
to:user
to:elonmusk
回复特定用户
since:DATE
since:2024-01-01
指定日期之后
until:DATE
until:2024-12-31
指定日期之前
lang:xx
lang:en
语言代码
#hashtag
#AI
话题标签
filter:links
filter:links
包含链接的推文
min_retweets:N
min_retweets:100
最低转发量

3. Fetch Data

3. 获取数据

Execute the search script:
bash
scripts/twitter_search.py "$API_KEY" "YOUR_QUERY" --max-results 1000 --query-type Top
Important: Default is 1000 tweets maximum. The script automatically:
  • Paginates through all available results
  • Stops at 1000 tweets (API limit consideration)
  • Handles errors gracefully
执行搜索脚本:
bash
scripts/twitter_search.py "$API_KEY" "YOUR_QUERY" --max-results 1000 --query-type Top
重要提示:默认最多抓取1000条推文。脚本会自动:
  • 分页获取所有可用结果
  • 达到1000条时停止(考虑API限制)
  • 优雅处理错误

4. Analyze and Generate Report

4. 分析并生成报告

After fetching data, produce a comprehensive professional report with:
获取数据后,生成全面的专业报告,包含以下内容:

Report Structure

报告结构

  1. Executive Summary (2-3 sentences)
    • What was searched
    • Key findings overview
  2. Data Overview
    • Total tweets analyzed
    • Date range of data
    • Query parameters used
  3. Key Metrics
    • Total engagement (likes, retweets, replies, quotes, views)
    • Average engagement per tweet
    • Language distribution
    • Reply vs. original tweet ratio
  4. Top Content Analysis
    • Most retweeted tweets (with URL links to original tweets)
    • Most liked tweets (with URL links to original tweets)
    • Top hashtags with frequency
    • Most mentioned users
    • Selected tweet examples with full URL references
  5. Influencer Analysis
    • Top users by follower count
    • Most active users
    • Verified user percentage
  6. Trend Insights (based on data patterns)
    • Emerging themes
    • Sentiment indicators
    • Temporal patterns
    • Conversation drivers
  7. Key Takeaways
    • 3-5 bullet points of core insights
    • Data-backed conclusions
  8. Actionable Recommendations
    • Specific, implementable suggestions
    • Based on the data findings
    • Prioritized by impact
  1. 执行摘要(2-3句话)
    • 搜索的内容
    • 关键发现概述
  2. 数据概览
    • 分析的推文总数
    • 数据的日期范围
    • 使用的查询参数
  3. 核心指标
    • 总互动量(点赞、转发、回复、引用、浏览量)
    • 单条推文平均互动量
    • 语言分布
    • 回复与原创推文的比例
  4. 热门内容分析
    • 转发量最高的推文(附原文链接
    • 点赞量最高的推文(附原文链接
    • 高频话题标签
    • 提及次数最多的用户
    • 精选推文示例(附完整URL引用)
  5. 意见领袖分析
    • 粉丝数最多的用户
    • 最活跃的用户
    • 认证用户占比
  6. 趋势洞察(基于数据模式)
    • 新兴主题
    • 情感指标
    • 时间模式
    • 话题驱动因素
  7. 核心结论
    • 3-5个核心洞察要点
    • 基于数据的结论
  8. 可执行建议
    • 具体、可落地的建议
    • 基于数据发现
    • 按影响优先级排序

Analysis Guidelines

分析指南

  • Be data-driven: Every claim should reference actual metrics
  • Provide context: Explain why metrics matter
  • Identify patterns: Look for trends across the dataset
  • Stay objective: Present facts, avoid speculation
  • Be specific: Recommendations should be concrete and actionable
  • Consider external context: Use web search for background when relevant
  • 数据驱动:所有结论需引用实际指标
  • 提供上下文:解释指标的重要性
  • 识别模式:挖掘数据集的趋势
  • 保持客观:呈现事实,避免猜测
  • 具体明确:建议需具体可执行
  • 考虑外部背景:必要时通过网络搜索验证趋势

5. Output Format

5. 输出格式

Present the report in clear markdown with:
  • Headers for each section
  • Tables for structured data
  • Bullet points for lists
  • Bold for key metrics
  • Code blocks for tweet examples
  • Clickable URLs for all referenced tweets (format:
    [@username](https://x.com/username/status/tweet_id)
    )
使用清晰的Markdown格式呈现报告:
  • 每个部分使用标题
  • 结构化数据使用表格
  • 列表使用项目符号
  • 核心指标使用加粗
  • 推文示例使用代码块
  • 所有引用的推文需包含可点击链接(格式:
    [@username](https://x.com/username/status/tweet_id)

Tweet URL Format

推文URL格式

Always include clickable links to tweets:
markdown
| Author | Tweet | URL |
|--------|-------|-----|
| @user | Summary of tweet content | [View](https://x.com/user/status/123456) |
Or inline format:
markdown
- **@username**: Tweet summary - [View Tweet](https://x.com/username/status/123456)
务必包含推文的可点击链接:
markdown
| 作者 | 推文内容 | 链接 |
|--------|-------|-----|
| @user | 推文摘要 | [查看](https://x.com/user/status/123456) |
或行内格式:
markdown
- **@username**:推文摘要 - [查看推文](https://x.com/username/status/123456)

Query Examples by Use Case

按使用场景分类的查询示例

Trend Analysis

趋势分析

"AI" OR "artificial intelligence" lang:en min_retweets:50
"AI" OR "artificial intelligence" lang:en min_retweets:50

Competitor Monitoring

竞品监控

from:competitor1 OR from:competitor2 since:2024-01-01
from:competitor1 OR from:competitor2 since:2024-01-01

Product Launch Tracking

产品发布追踪

#ProductName OR "Product Name" lang:en filter:verified
#ProductName OR "Product Name" lang:en filter:verified

Crisis Monitoring

危机监控

#BrandName OR "Brand Name" lang:en --query-type Latest
#BrandName OR "Brand Name" lang:en --query-type Latest

Influencer Discovery

意见领袖挖掘

#Topic lang:en min_retweets:100 min_faves:500
#Topic lang:en min_retweets:100 min_faves:500

Sentiment Analysis

情感分析

"brand name" OR #BrandName lang:en --max-results 1000
"brand name" OR #BrandName lang:en --max-results 1000

Resources

资源说明

scripts/run_search.sh (Wrapper Script)

scripts/run_search.sh(包装脚本)

Convenience wrapper that handles environment variable loading and dependency checks:
  • Automatically loads
    TWITTER_API_KEY
    from
    ~/.bashrc
    or
    ~/.zshrc
  • Checks Python availability and installs missing dependencies
  • Provides user-friendly error messages
  • Supports all command-line options from the Python script
Usage:
bash
./scripts/run_search.sh <query> [options]
Options:
  • --api-key KEY
    : Override environment variable API key
  • --max-results N
    : Maximum tweets to fetch (default: 1000)
  • --query-type Latest|Top
    : Sort order (default: Top)
  • --format json|summary
    : Output format (default: json)
便捷的包装脚本,处理环境变量加载和依赖检查:
  • 自动从
    ~/.bashrc
    ~/.zshrc
    加载
    TWITTER_API_KEY
  • 检查Python可用性并安装缺失的依赖
  • 提供友好的错误提示
  • 支持Python脚本的所有命令行选项
使用方法:
bash
./scripts/run_search.sh <query> [options]
可用选项:
  • --api-key KEY
    :覆盖环境变量中的API密钥
  • --max-results N
    :最多抓取的推文数量(默认:1000)
  • --query-type Latest|Top
    :排序方式(默认:Top)
  • --format json|summary
    :输出格式(默认:json)

scripts/twitter_search.py

scripts/twitter_search.py

Executable Python script that:
  • Fetches tweets from Twitter API
  • Handles pagination automatically
  • Extracts key tweet metrics
  • Calculates aggregate statistics
  • Outputs structured JSON data
Usage:
bash
scripts/twitter_search.py <api_key> <query> [options]
可执行Python脚本,功能包括:
  • 从Twitter API抓取推文
  • 自动处理分页
  • 提取推文核心指标
  • 计算汇总统计数据
  • 输出结构化JSON数据
使用方法:
bash
scripts/twitter_search.py <api_key> <query> [options]

references/twitter_api.md

references/twitter_api.md

Comprehensive API documentation including:
  • Complete parameter reference
  • Query syntax guide
  • Response structure details
  • Pagination instructions
  • Best practices for analysis
  • Error handling guide
Read this when: Building complex queries or understanding data structure.
全面的API文档,包含:
  • 完整参数参考
  • 查询语法指南
  • 响应结构细节
  • 分页说明
  • 分析最佳实践
  • 错误处理指南
阅读时机:构建复杂查询或理解数据结构时。

Tips for Better Analysis

提升分析质量的技巧

  1. Use Top query type for trend analysis (more relevant results)
  2. Set date filters for timely insights
  3. Filter by language for accurate text analysis
  4. Include minimum engagement to filter noise
  5. Combine with web search to validate trends
  6. Look beyond metrics - analyze content themes
  7. Track hashtags to identify sub-conversations
  8. Identify influencers by combining followers + engagement
  1. 使用Top查询类型进行趋势分析(结果相关性更高)
  2. 设置日期过滤器获取时效性洞察
  3. 按语言过滤确保文本分析的准确性
  4. 设置最低互动量过滤无效内容
  5. 结合网络搜索验证趋势
  6. 超越指标 - 分析内容主题
  7. 追踪话题标签识别子话题讨论
  8. 结合粉丝数与互动量识别意见领袖

Error Handling

错误处理

If the script fails:
  • Check API key validity
  • Verify query syntax
  • Ensure network connectivity
  • Check rate limits (if applicable)
  • Review error messages for specific issues
如果脚本运行失败:
  • 检查API密钥的有效性
  • 验证查询语法
  • 确保网络连接正常
  • 检查速率限制(如适用)
  • 查看错误消息定位具体问题