

# 如何以更少噪声追踪 Reddit 关键词

先测试一小批关键词样本，为每条结果标注，并在常规数据采集之前修改搜索查询。噪声是指返回的帖子并不讨论你预定的主题。Actor 是托管的数据采集程序。Task 是已保存的输入预设。相关性检验询问每条结果是否服务于你的研究问题。它并不衡量有多少客户遇到同一问题。当前的 Reddit Search 构建器接收查询、可选的 subreddit、最大结果上限、排序方式以及时间窗口。最大结果上限是整个搜索共用的唯一帖子限额，不是每个社区的配额。数据集中的一行表示一条唯一发现的公开帖子。默认的提及 Task 使用品牌短语、上限 100、按 new 排序以及一个月的时间窗口。把该短语换成你的目标测试，并以较小的上限 3 开始，以便检查每一条帖子。这个小测试检查的是采集形态，不是普遍准确性。已检查的三行 learnpython 对照达到了上限，读者的运行停止方式可能不同。达到最大结果和完成标志并不能确立完整总体。

## 采集设置

打开 [Reddit Search Scraper](https://apify.com/chronometrica/reddit-search-scraper) Actor 和 [Reddit Brand Mention Snapshot](https://apify.com/chronometrica/reddit-search-scraper/examples/reddit-brand-mention-snapshot) Task。工具输入为 query、可选的 subreddits、maxResults、sort 和 time。当前预设查询使用 `"Brand Name"`、maxResults 100、sort new 和 time month。把该查询换成你自己的相关短语，并从 maxResults 3 开始。MaxResults 是共用上限，不是每个 subreddit 的配额。

数据集的每一行保留这些确切字段：inputQuery、requestedSubreddit、matchedSubreddit、sort、time、rank、postId、canonicalPostUrl、title、body、createdAt、status、statusReason、unavailableFields 和 observedAt。来源 rank 表示顺序，不表示相关性。缺失的正文或上下文保持不确定。

已检查的三行 learnpython 对照达到了其上限。这并不能预测每位读者的运行都会达到上限，也不能验证读者查询的相关性。全局 isComplete 等于 true 表示一种处理结果，而不是完整的来源总体。某一行的 requestedSubreddit 或 matchedSubreddit 可以与摘要中的 subreddit 不同。

输出的 searchResults 条目包含 query、subreddit、status、reason、candidatesFound、rowsSaved、duplicatesSkipped、endReason、source 和 sourceUrl。运行摘要包含 status、statusReason、isComplete、query、searchesPlanned、searchesSucceeded、candidatesFound、usefulRows、rowsSaved、billableRows、freeRows、duplicatesSkipped、stopReason 和 observedAt。该对照的 searchResults[0] 具有 subreddit learnpython、status ok、rowsSaved 3、endReason max_results_reached 以及 source reddit_rss。

## 完整研究方法

1. 在搜索之前定义确切的研究问题和纳入规则。写出你预定的产品或主题以及上下文。表示体育运动或动物的词语需要明确的上下文。
2. 保存一条初始的普通或带引号查询，以及 sort、时间窗口和上限。使用一小批，以便检查每一条来源帖子。保持未改动的行以及输入和输出完整。
3. 在必要时阅读标题、正文和来源讨论。用明确理由把每条结果标为相关、不相关或不确定。不要假定正文[提及你的品牌](/zh-Hans/articles/%E5%AE%A1%E6%A0%B8-x-%E5%B8%96%E5%AD%90%E6%98%AF%E5%90%A6%E6%8F%90%E5%8F%8A%E4%BD%A0%E7%9A%84%E4%BA%A7%E5%93%81/)就是在询问其产品。不要把不可用的文本归类为不相关。
4. 列出错误匹配发生的原因。检查含糊的名称、供应商促销、招聘信息、无关用途、错误问题或不可用的上下文。这些原因用来指导更好的查询。
5. 一次只修改一个因素。增加一个问题用语，使用更清楚的短语，或[把搜索限制在有依据的社区](/zh-Hans/articles/%E5%AE%A2%E6%88%B7%E7%A0%94%E7%A9%B6%E5%A6%82%E4%BD%95%E9%80%89%E6%8B%A9subreddit/)。保留旧范围和新范围以便比较。
6. 用同一审阅规则重复一次小测试。分别报告相关计数和不确定计数。在你使用的比率旁边显示全部已采集计数和不确定计数。小样本不是精确的基准。
7. 只有在更清楚的查询仍能覆盖你预定的问题类型时，才选择它。收得过窄会藏起其他有用的说法。在需要时测试一条互补短语。
8. 保存一份查询测试表，包含输入、范围、来源 ID、标签、理由以及你选定的下一条查询。常规采集和排程以后再做。让改动保持可见。

## 虚构测试示例

所有查询结果和产品名称都是虚构的。产品 Orbit 是一个项目工具。针对 Orbit 的宽泛查询返回 6 条帖子。两条关于项目设置，两条关于天文学，一条是没有用户问题的供应商促销，一条正文不可用。标签为 2 条相关、3 条不相关、1 条不确定。在全部已采集帖子中，6 条里有 2 条相关，即 33.3%。在 5 条相关性已明确判定为相关或不相关的帖子中，相关占比是 5 条里有 2 条，即 40%。这两个数字都不是对真实工具准确性的主张。

一条针对项目设置的修改后短语得到 4 条帖子。其中有 3 条相关的设置讨论，以及 1 条不确定的无法访问正文。全部已采集帖子中的相关占比是 4 条里有 3 条，即 75%。在相关性已明确判定为相关或不相关的帖子中，相关占比是 3 条里有 3 条，即 100%，并显示 1 条相关性不确定的帖子。建议用一批互补的迁移查询，来检查设置短语漏掉的迁移问题。

下面的查询测试表列出 10 次虚构的查询结果中的帖子出现及其标签。一个来源 ID 出现在两批中；仅就这个重复的来源 ID 而言，它有 2 次帖子出现，但在合并的研究集合里只算作 1 条唯一的来源帖子。

| 批次 | 来源 ID | 所用查询 | 标签 | 理由 |
| --- | --- | --- | --- | --- |
| 宽泛 | src_01 | Orbit | 相关 | 项目设置讨论 |
| 宽泛 | src_02 | Orbit | 相关 | 项目设置讨论 |
| 宽泛 | src_03 | Orbit | 不相关 | 天文学讨论 |
| 宽泛 | src_04 | Orbit | 不相关 | 天文学讨论 |
| 宽泛 | src_05 | Orbit | 不相关 | 供应商促销 |
| 宽泛 | src_06 | Orbit | 不确定 | 正文不可用 |
| 已修改 | src_02 | "Orbit" project setup | 相关 | 设置问题已解决 |
| 已修改 | src_07 | "Orbit" project setup | 相关 | 设置缺陷修复 |
| 已修改 | src_08 | "Orbit" project setup | 相关 | 设置配置 |
| 已修改 | src_09 | "Orbit" project setup | 不确定 | 正文不可用 |

这些判定为设置问题选择设置短语，把迁移保留为一项需要的范围测试，并让不可用正文保持不确定。随后没有回复或情感输出。

## 下一步行动

打开位于 [https://apify.com/chronometrica/reddit-search-scraper/examples/reddit-brand-mention-snapshot](https://apify.com/chronometrica/reddit-search-scraper/examples/reddit-brand-mention-snapshot) 的 Reddit Brand Mention Snapshot Task，并使用位于 [https://apify.com/chronometrica/reddit-search-scraper](https://apify.com/chronometrica/reddit-search-scraper) 的主抓取 Actor，设置一条问题短语和一个小上限，用所述相关性规则为每条结果标注，并在重复之前修改一个查询因素。

## 来源和延伸阅读

- [https://apify.com/chronometrica/reddit-search-scraper](https://apify.com/chronometrica/reddit-search-scraper)
- [https://www.reddit.com/r/AskMarketing/comments/1r234t8/how_do_you_track_reddit_keywords_with_minimum/](https://www.reddit.com/r/AskMarketing/comments/1r234t8/how_do_you_track_reddit_keywords_with_minimum/)