Reddit Collector
Выбор языка

Две недели наблюдения с едиными правилами включения

Спланируйте сбор публикаций Reddit за две недели: даты UTC, единые критерии включения и журнал полученных материалов и исключений.

Получить API-ключ

Опишите сравнение до просмотра результатов

Возьмите конкретный исследовательский вопрос: как в AskSocialScience просят научно обосновать объяснение в две соседние недели? Считайте единицей начальную публикацию. Заранее решите, подходит ли сообщение без знака вопроса или без ссылки на исследование. Запишите решение до сбора, чтобы интересная находка в одной неделе не изменила незаметно правила для другой. Это план изучения доступных текстов, а не измерение представительности сообщества.

Запишите начало и конец периода до запроса. from и to принимают дни YYYY-MM-DD в UTC; последний день включается полностью. Если вопрос исследования привязан к местному календарю, опишите перевод границ в UTC. Фильтра по часам внутри дня нет. Когда местный день пересекает границы суток UTC, можно запросить более широкий диапазон дней и проверить временные метки локально. Это организация работы, а не доказательство полного получения.

Событие, описанное в тексте публикации, могло произойти раньше её создания. Не смешивайте эти даты при интерпретации. Независимый исторический архив не гарантирует полный охват, расписание обновлений или неизменный снимок. По выдаче нельзя установить, что все значимые участники обсуждения представлены. Первая временная метка ответа не обозначает начало истории сообщества, а последняя не доказывает завершение события. Отсутствие записи не следует превращать в наблюдение об отсутствии активности.

Задайте каждой неделе собственные границы UTC

Возьмите GET https://api.redditcollector.com/v1/posts?subreddit=AskSocialScience&limit=3 и добавьте &from=2025-03-01&to=2025-03-07 для первого условного окна. Для второго задайте from=2025-03-08&to=2025-03-14 и начните с page=1. Даты описывают учебный план, не известный охват архива. Формат — YYYY-MM-DD в UTC; последний день to включён целиком. Пример с главной без этих параметров не ограничен датами. Между окнами сохраняйте маршрут, сообщество и критерий включения, меняя только границы периода.

Передавайте X-API-Key: <ключ> или Authorization: Bearer <ключ> с сервера. Страница получения ключа объясняет регистрацию до оплаты. В собственном журнале сохраняйте маршрут, фактические даты, сообщество, page, limit и время получения без секрета. Если добавляете q, author или min_score, запишите причину. q выполняет текстовый поиск; min_score задаёт числовой порог, не определяет качество, тональность или достоверность. Изменение фильтра меняет правила включения в вашу коллекцию.

Отделите фильтры от исследовательской разметки

Сначала изучите формулировки без q и min_score. Если затем нужен q, учитывайте его правило: поиск идёт по title и text, причём все слова запроса должны совпасть в одном из этих полей, а не распределиться между заголовком и текстом. min_score только отсекает записи по порогу, не ранжирует по качеству или новизне. Храните собственную тематическую метку и причину исключения отдельно от исходных полей. Архив таких исследовательских оценок не присваивает.

Проверьте HTTP-ответ и сохраните исходные data, pagination и credits до очистки текста. Сопоставьте доступные created_utc с описанным окном. Отсутствующие поля и причины исключения фиксируйте отдельно. Временные метки помогают проверить правило включения, но не удостоверяют авторство, подлинность или дату описанного события. Если вопрос требует полного контекста, укажите, что плоские записи и имеющиеся parent_id или link_id не гарантируют целого разговора.

Параметр min_score используется исключительно как фильтр, но не управляет сортировкой результатов. Это важное отличие от поисковых систем, где релевантность часто определяет порядок вывода. Понимание этого аспекта позволяет исследователям правильно настраивать свои запросы, чтобы получить релевантный набор данных по заданным критериям, не полагаясь на порядок сортировки по умолчанию.

Зафиксируйте условие остановки

Для маршрутов содержимого limit и page принимают значения от 1 до 100, одна страница за запрос. _doc — внутренний порядок документов, не хронология или релевантность. Следующая страница не является следующей временной отметкой. Заранее определите бюджет запросов и условие остановки. Разбиение дат и локальное удаление повторных идентификаторов помогают организовать сбор, но не гарантируют исчерпывающий набор или уникальность записей между обращениями.

Читайте total вместе с relation: eq — точный итог запроса, gte — нижняя граница, unknown — отсутствие надёжного итога, возможно null. Сохраняйте возвращённые has_more и window_exhausted. Пустая глубокая страница может иметь неизвестный итог; это не доказательство нулевой исторической активности. /v1/subreddits принимает только prefix и limit, без page и дат, поэтому не подтверждает наличие материалов сообщества за выбранную неделю.

Каждое успешное получение стоит кредит, включая пустые страницы и повторы: $1 за 1000, платное пополнение от $50 за 50000 кредитов. Пробные кредиты условны. Некорректный запрос не списывается, сбой источника возвращает резерв; потеря ответа может следовать за оплаченной операцией. Локальное исключение неподходящей записи не возвращает стоимость. Документация и цены помогут учесть попытки и различать HTTP 400, 401, 402 и 429. /v1/status подтверждает лишь ответ HTTP-приложения.

Составьте методическую заметку о полученном материале

Завершите работу заметкой о методе: почему выбраны именно эти недели, почему анализируются начальные публикации, какие фильтры применялись и отчего сбор завершён. Разведите число полученных и принятых в анализ записей, отметьте недоступные даты или контекст. Одинаковая длительность окон и равный бюджет запросов не создают репрезентативных выборок. Различие тем в собранных текстах относится к изученному материалу и само по себе не доказывает изменения во всём сообществе.

Завершите журнал перечнем файлов, решений обработки, исключений и ограничений материала. Для повторного локального анализа используйте сохранённые ответы, не обещая идентичного удалённого получения. В отчёте различайте запланированный период, наблюдаемые даты и доступность архива. Соблюдайте применимые законы и права третьих лиц при хранении, цитировании и передаче исследовательских материалов. Доступ через API сам по себе не определяет эти обязанности и не подтверждает научную достоверность выводов.