Как скрапить Reddit с помощью Python: 4 рабочих способа

Последнее обновление: April 15, 2026

Google ежегодно платит $60 миллионов за лицензию на данные Reddit. По слухам, сделка OpenAI оценивается в $70 миллионов. Это многое говорит о том, что скрыто в этих ветках комментариев. Если вы хоть раз пытались вручную собирать обсуждения, комментарии или данные о тональности с Reddit, то знаете, насколько это утомительно: бесконечная прокрутка, копирование и вставка, десятки вкладок.

В прошлом квартале я потратил немало времени, помогая команде Thunderbit разобраться, как именно люди извлекают данные из Reddit в 2025 году. После обновления ценовой политики Reddit API в 2023 году ситуация сильно изменилась, а большинство гайдов в интернете либо уже устарели, либо описывают только один способ. Поэтому я собрал всё, что реально работает прямо сейчас — четыре разных подхода, от полноценного Python-скриптинга до извлечения данных без кода, — чтобы вы могли выбрать вариант под свой уровень и задачу. Хотите собрать датасет для NLP, отслеживать упоминания бренда в сабреддите или просто получить таблицу с популярными постами — этот материал вам пригодится.

Что такое скрапинг Reddit и зачем он нужен?

Скрапинг Reddit — это программное извлечение постов, комментариев, данных пользователей и метаданных со страниц Reddit или через API. Вместо ручного просмотра веток и копирования текста вы используете скрипт или инструмент, чтобы собирать структурированные данные в нужном объёме.

Зачем вообще это делать? На Reddit более и, по оценкам, публикуется . Здесь люди делятся неприукрашенными мнениями о продуктах, сервисах, конкурентах и трендах — это тот самый живой сигнал, который почти невозможно найти на отполированных сайтах с отзывами или в корпоративных блогах. Google платит примерно за лицензию на контент Reddit, а сделка OpenAI, по сообщениям, составляет . Если крупнейшие AI-компании мира платят за эти данные девятизначные суммы, стоит разобраться, как получить к ним доступ самостоятельно.

Зачем скрапить Reddit с помощью Python в 2025 году?

Python — стандартный язык для скрапинга Reddit: PRAW, requests, BeautifulSoup и pandas закрывают весь путь от API-запросов до экспорта данных. Но причина использовать Python не сводится только к инструментам.

Вот самые частые сценарии, которые я вижу у бизнес-команд и исследователей:

СценарийКому полезноПример
Исследование рынка и проверка гипотезПродакт-менеджеры, фаундерыПоиск повторяющихся болей в r/SaaS или r/Entrepreneur
Анализ тональностиМаркетинг, бренд-командыОтслеживание того, как люди говорят о вашем продукте и конкурентах
Генерация лидовОтделы продажПоиск постов вроде «ищу инструмент, который умеет X» в нишевых сабреддитах
Идеи для контентаКонтент-маркетологиВыявление популярных вопросов и тем в r/marketing или r/SEO
Академические / NLP-исследованияИсследователи, дата-сайентистыСоздание размеченных датасетов из комментариев для классификации эмоций
Конкурентная разведкаСтратегия, операционные командыМониторинг сабреддитов конкурентов на предмет повторяющихся жалоб

По оценкам, аудитория Reddit достигла , а еженедельная активная аудитория составила — рост на 24% год к году. А после августовского core update Google 2024 года контент Reddit стал примерно в органической выдаче.

Иными словами: данные, которые вы извлекаете из Reddit, всё чаще совпадают с теми данными, которые Google показывает пользователям в поиске.

Какой способ выбрать для скрапинга Reddit? (Краткое сравнение)

Самый частый вопрос на форумах по скрапингу Reddit звучит буквально так: «Какой метод мне использовать?» Поэтому я собрал эту таблицу. Выбирайте подходящую строку и двигайтесь дальше.

КритерийPRAW.json endpointBeautifulSoup (HTML)Без кода (Thunderbit)
Сложность настройкиСредняя (API-приложение + pip install)Нет (достаточно URL)Средняя (pip + анализ DOM)Очень низкая (расширение Chrome)
Нужен API-ключ?ДаНетНетНет
Скрапинг комментариевГлубокий (вложенные деревья)Ограниченный (верхний уровень)Ручной парсингСтруктурирование AI
ПагинацияВстроеннаяРучная (параметр after)РучнаяАвтоматическая
Ограничения по частоте100 запросов/мин (управляется PRAW)~10 запросов/мин (без авторизации)Риск блокировки IPОбрабатывается инструментом
Лучше всего подходит дляПолноценные проекты, исследованияБыстрые одноразовые выгрузкиОбучения и кастомизацииНе-программисты, быстрый экспорт
Варианты экспортаCSV, JSON (через код)JSON (сырые данные)Кастомный (через код)Excel, Google Sheets, Airtable, Notion

Если вам нужны полноценные Python-проекты с глубоким извлечением комментариев, начните со способа 1 (PRAW). Нужна быстрая выгрузка в ближайшие 10 минут без подготовки? Попробуйте способ 2 (трюк с .json). Хотите научиться HTML-скрапингу или нужны кастомные поля? Тогда способ 3 (BeautifulSoup). А если вы хотите вообще обойтись без Python и просто получить данные, переходите к способу 4 ().

Что изменилось: обновление цен Reddit API в 2023–2024 годах и что всё ещё доступно бесплатно

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

В июне 2023 года Reddit впервые с 2008 года ввёл платные уровни доступа к API. Последствия были серьёзными:

  • Pushshift перестал быть доступен для публичного использования. Reddit отозвал доступ Pushshift к API в мае 2023 года. Исследователи, которые на него опирались (Pushshift цитировался более чем в ), в одночасье потеряли основной источник данных. Преемник для исторических данных — , но публичной замены для live API нет.
  • Сторонние приложения закрылись. Apollo, Reddit is Fun, Sync, BaconReader и другие прекратили работу к 30 июня 2023 года после того, как Reddit выставил разработчику Apollo цену за API.
  • Более 8 500 сабреддитов ушли в офлайн в знак протеста, включая r/funny (40 млн подписчиков), r/gaming и r/science ().

Что всё ещё бесплатно в 2025 году:

по-прежнему доступен для некоммерческого, личного и академического использования — 100 запросов в минуту на один OAuth client ID. PRAW отлично работает в рамках этого тарифа для умеренного скрапинга. Неавторизованный доступ (включая .json endpoint) ограничен примерно 10 запросами в минуту.

Практический вывод: для небольших и средних задач бесплатного тарифа более чем достаточно. Для крупномасштабного или коммерческого использования вам придётся либо обратиться в Reddit за enterprise-доступом, либо использовать .json endpoint или BeautifulSoup (они не требуют API-ключей), либо взять инструмент вроде Thunderbit, который вообще не зависит от API Reddit.

Перед началом

  • Сложность: от начального до среднего уровня — зависит от метода
  • Время: около 15–30 минут для способов 1–3; около 5 минут для способа 4
  • Что понадобится:
    • Python 3.8+ (для способов 1–3)
    • Аккаунт Reddit (для способа 1)
    • Браузер Chrome (для способа 4)
    • (для способа 4)

Способ 1: как скрапить Reddit с помощью Python и PRAW — пошагово

PRAW (Python Reddit API Wrapper) — самый популярный и лучше всего документированный способ скрапинга Reddit на Python. Он берёт на себя авторизацию, лимиты запросов и пагинацию, а также активно поддерживается: последняя стабильная версия — PRAW 7.8.1 (октябрь 2024), поддерживает Python 3.8–3.13.

Шаг 1. Создайте приложение Reddit и получите API-учётные данные

Перейдите на и прокрутите страницу вниз. Нажмите "are you a developer? create an app..."

Заполните форму:

  • Name: любое понятное имя, например "my-reddit-scraper"
  • App type: выберите script
  • Redirect URI: укажите http://localhost:8080 (обязательно, но для script-приложений не используется)
  • Description: по желанию

Нажмите Create app. Вы увидите свои данные:

  • client_id — 14-символьная строка прямо под названием приложения (подпись "personal use script")
  • client_secret — поле, помеченное как "secret"

Перед завершением создания приложения вам также нужно принять и .

И ещё важный момент: с конца 2024 года новым разработчикам может понадобиться отправить запрос на доступ и дождаться одобрения. Это главный барьер для тех, кто впервые работает с PRAW, и обойти его нельзя.

Шаг 2. Установите PRAW и создайте объект Reddit

Откройте терминал и выполните:

1pip install praw pandas

Затем создайте объект Reddit в режиме только для чтения:

1import praw
2reddit = praw.Reddit(
3    client_id="YOUR_CLIENT_ID",
4    client_secret="YOUR_CLIENT_SECRET",
5    user_agent="python:reddit-scraper:v1.0 (by u/yourname)",
6)
7# reddit.read_only по умолчанию True для script-приложений без пароля

Формат user_agent действительно важен. Reddit активно ограничивает слишком общие строки вроде python-requests/2.x. Используйте рекомендованный формат: platform:app_id:version (by u/username).

Шаг 3. Соберите посты из сабреддита

Вот как получить топовые посты из r/python за последний месяц и сохранить их в pandas DataFrame:

1import pandas as pd
2subreddit = reddit.subreddit("python")
3rows = []
4for post in subreddit.top(time_filter="month", limit=500):
5    rows.append({
6        "id": post.id,
7        "title": post.title,
8        "selftext": post.selftext,
9        "score": post.score,
10        "upvote_ratio": post.upvote_ratio,
11        "num_comments": post.num_comments,
12        "author": str(post.author) if post.author else "[deleted]",
13        "created_utc": post.created_utc,
14        "url": post.url,
15        "permalink": f"https://reddit.com{post.permalink}",
16    })
17df = pd.DataFrame(rows)
18print(df.head())

Вы можете заменить .top() на .hot(), .new() или .controversial(), а time_filter принимает значения "all", "day", "hour", "month", "week" или "year".

Небольшое предупреждение: Reddit ограничивает любую ленту примерно 1000 элементами, независимо от того, насколько большое значение вы зададите в limit. Это ограничение на стороне Reddit, а не PRAW.

Шаг 4. Экспортируйте данные Reddit в CSV или Excel

1df.to_csv("reddit_python_top.csv", index=False)
2df.to_json("reddit_python_top.json", orient="records", lines=True)

PRAW автоматически обрабатывает лимиты: он читает заголовки X-Ratelimit-Remaining и X-Ratelimit-Reset в каждом ответе и при необходимости делает паузы между запросами. Для умеренного скрапинга ручные задержки обычно не нужны.

Как скрапить комментарии Reddit с помощью Python: глубокие вложенные ветки

Именно на комментариях многие и спотыкаются.

Reddit хранит комментарии в виде дерева: у каждого комментария могут быть дочерние ответы, а часть веток скрыта за ссылками "load more comments". В терминологии PRAW такие скрытые ветки представлены объектами MoreComments.

Мысленно это выглядит так:

1Submission (t3_abc123)
2├── Comment A (top-level)
3│   ├── Reply A1
4│   │   └── Reply A1a
5│   └── Reply A2
6├── Comment B (top-level)
7│   └── MoreComments (hidden — "load more comments")
8└── MoreComments (hidden — "continue this thread")

Используем replace_more(), чтобы получить все скрытые комментарии

Метод replace_more() проходит по дереву комментариев и заменяет каждый плейсхолдер MoreComments реальными комментариями, на которые он указывает:

1submission = reddit.submission(id="abcdef")
2submission.comments.replace_more(limit=10)  # практический предел для больших веток
3all_comments = submission.comments.list()   # плоский список в ширину

Если указать limit=None, метод заменит каждый узел MoreComments без исключения. Но в ветке с 5000+ комментариями это может занять несколько минут, потому что каждая замена — это отдельный API-запрос, возвращающий максимум около 100 комментариев. Для больших обсуждений я рекомендую начинать с limit=10 или limit=20 и увеличивать значение только если нужна полная выборка.

Преобразуем вложенные комментарии в таблицу

1rows = []
2for c in all_comments:
3    rows.append({
4        "comment_id": c.id,
5        "parent_id": c.parent_id,   # t1_xxx = родительский комментарий, t3_xxx = submission
6        "depth": c.depth,
7        "author": str(c.author) if c.author else "[deleted]",
8        "body": c.body,
9        "score": c.score,
10        "created_utc": c.created_utc,
11        "is_submitter": c.is_submitter,
12    })
13comments_df = pd.DataFrame(rows)

У верхнеуровневых комментариев parent_id начинается с t3_ (fullname submission). Колонка depth показывает, насколько глубоко вложен комментарий — это удобно для фильтрации и визуализации. Есть один нюанс: len(all_comments) обычно не совпадает с submission.num_comments, потому что удалённые, скрытые и отфильтрованные как спам комментарии не попадают в дерево.

Способ 2: трюк с .json endpoint — скрапинг Reddit без API-ключа

Просто добавьте .json к любому URL Reddit. И всё. Вы получаете структурированный JSON — без авторизации, без регистрации приложения и без установки pip-пакетов.

Пример: https://www.reddit.com/r/python/hot.json

Пользователи форумов постоянно упоминают этот способ, но почти ни один туториал его не разбирает.

Рабочий пример кода на Python

1import requests
2headers = {"User-Agent": "python:reddit-scraper:v1.0 (by /u/yourname)"}
3r = requests.get(
4    "https://www.reddit.com/r/python/hot.json",
5    headers=headers,
6    params={"limit": 100},
7)
8data = r.json()
9for post in data["data"]["children"]:
10    p = post["data"]
11    print(p["title"], p["score"], p["num_comments"], p["author"])

Заголовок User-Agent критически важен. Reddit блокирует или ограничивает слишком общие user-agent’ы вроде python-requests/2.31.0 — как , «это ограничение скорости завязано на user-agent». Используйте такой же описательный формат, как в PRAW.

Как обойти пагинацию с помощью параметра after

По умолчанию .json endpoint возвращает около 25 результатов (максимум 100 за запрос). Чтобы получить больше, используйте курсор after из ответа:

1import requests, time
2headers = {"User-Agent": "python:reddit-scraper:v1.0 (by /u/yourname)"}
3after = None
4all_posts = []
5for _ in range(10):  # до ~1000 постов
6    r = requests.get(
7        "https://www.reddit.com/r/python/hot.json",
8        headers=headers,
9        params={"limit": 100, "after": after},
10    )
11    data = r.json()
12    all_posts.extend(data["data"]["children"])
13    after = data["data"].get("after")
14    if not after:
15        break
16    time.sleep(6)  # ~10 запросов в минуту = один запрос каждые 6 секунд

Значение after — это токен курсора (формат: t3_xxxxxx). Как и у PRAW, жёсткий предел — около 1000 элементов на все страницы вместе.

Ограничения метода .json

  • Нет доступа к глубокому дереву комментариев — вы получите верхний уровень комментариев и один уровень заглушек more, но не автоматическое раскрытие, как у replace_more() в PRAW
  • Только чтение — нельзя голосовать, публиковать или модерировать
  • Около 10 запросов в минуту для неавторизованного доступа — слишком активные циклы вызовут ошибки 429
  • Тот же лимит в 1000 элементов, что и у авторизованного API

Этот способ лучше всего подходит для быстрых одноразовых выгрузок, прототипов или случаев, когда вы не хотите регистрировать API-приложение.

Способ 3: как скрапить Reddit с помощью BeautifulSoup (HTML-парсинг)

Если вы уже занимались веб-скрапингом, то, скорее всего, знаете BeautifulSoup. В случае Reddit есть важный приём: используйте old.reddit.com вместо нового React-интерфейса. Старая версия рендерится на сервере, она легче и гораздо проще для парсинга — подтверждают, что она всё ещё доступна и удобна для скрапинга.

Настройка requests и BeautifulSoup

1pip install requests beautifulsoup4
1import requests
2from bs4 import BeautifulSoup
3headers = {"User-Agent": "python:reddit-scraper:v1.0 (by /u/yourname)"}
4r = requests.get("https://old.reddit.com/r/python/", headers=headers)
5soup = BeautifulSoup(r.text, "html.parser")

Извлечение данных о постах из DOM

На old.reddit.com каждый пост находится внутри <div> с классом thing. Самые стабильные селекторы — это атрибуты data-*:

1for thing in soup.select("div#siteTable > div.thing"):
2    title_el = thing.select_one("a.title")
3    print({
4        "title":    title_el.get_text(strip=True) if title_el else None,
5        "author":   thing.get("data-author"),
6        "score":    thing.get("data-score"),
7        "comments": thing.get("data-comments-count"),
8        "domain":   thing.get("data-domain"),
9        "url":      title_el.get("href") if title_el else None,
10    })

Лучше опираться на атрибуты data-*, а не на вложенные селекторы по классам — Reddit много раз менял названия классов, а data-атрибуты формируются шаблоном и меняются редко.

Пагинация на old.reddit.com

1import time
2url = "https://old.reddit.com/r/python/"
3all_rows = []
4while url:
5    r = requests.get(url, headers=headers)
6    soup = BeautifulSoup(r.text, "html.parser")
7    for thing in soup.select("div#siteTable > div.thing"):
8        title_el = thing.select_one("a.title")
9        all_rows.append({
10            "title":    title_el.get_text(strip=True) if title_el else None,
11            "author":   thing.get("data-author"),
12            "score":    thing.get("data-score"),
13            "comments": thing.get("data-comments-count"),
14            "url":      title_el.get("href") if title_el else None,
15        })
16    nxt = soup.select_one("span.next-button a")
17    url = nxt["href"] if nxt else None
18    time.sleep(2)  # вежливая пауза

Когда использовать BeautifulSoup вместо PRAW

BeautifulSoup подходит, если вы хотите освоить DOM-скрапинг, не хотите регистрировать OAuth-приложение или вам нужны кастомные поля, которые PRAW не отдаёт. Но он более хрупкий: HTML-структура может измениться без предупреждения, блокировки IP в 2025 году стали жёстче, чем раньше, и всю логику пагинации и обработки ошибок придётся писать вручную. По надёжности и глубине PRAW выигрывает.

Способ 4: как скрапить Reddit без кода с помощью Thunderbit

Признание: многие, кто ищет «how to scrape Reddit with Python», на самом деле не хотят писать Python. Им нужны данные. Если это про вас, этот раздел — ваш запасной выход.

— это AI-расширение для Chrome, которое наша команда создала именно для таких задач: извлечение структурированных данных со страниц без написания кода.

Шаг 1. Установите Thunderbit и откройте страницу Reddit

Установите , затем откройте любой сабреддит или страницу поста Reddit, например reddit.com/r/python.

Ни API-ключа, ни Python-среды, ни команд в терминале.

Шаг 2. Нажмите "AI Suggest Fields" и дайте AI прочитать страницу

Нажмите на иконку Thunderbit в панели браузера, затем выберите "AI Suggest Fields." AI Thunderbit проанализирует страницу и автоматически предложит столбцы вроде Post Title, User Name, Upvotes, Comments Count, Date Posted, Post Description, Community Name и Post URL.

Вы можете добавлять, удалять и переименовывать поля по своему усмотрению. Например, если вам нужны только заголовки и рейтинг, просто удалите остальное.

Шаг 3. Нажмите "Scrape" и экспортируйте данные

Нажмите "Scrape", и Thunderbit соберёт данные, автоматически обработав пагинацию. После заполнения таблицы вы можете сразу экспортировать её в Excel, Google Sheets, Airtable или Notion — без кода для CSV.

Для более глубоких данных в Thunderbit есть скрапинг подстраниц: можно открыть отдельные ветки и автоматически обогатить таблицу данными из комментариев. По смыслу это похоже на replace_more() в PRAW, но без единой строки кода.

Бонус: расписание скрапинга для постоянного мониторинга Reddit

Если вам нужно ежедневно отслеживать сабреддит — например, мониторить упоминания бренда в r/SaaS или обсуждения конкурентов в нишевом сообществе — у Thunderbit есть планировщик повторных запусков. Вы описываете интервал обычным языком, например «каждый будний день в 9 утра», а инструмент делает всё остальное и доставляет свежие данные в подключённую таблицу или базу.

Подробнее о возможностях Thunderbit для скрапинга Reddit можно узнать на .

Советы и лучшие практики для скрапинга Reddit с помощью Python

Большую часть этих правил я усвоил на собственных ошибках — они актуальны независимо от выбранного способа.

Соблюдайте правила Reddit и лимиты запросов

В Reddit прямо запрещает коммерческий скрапинг без письменного согласия — и это относится ко всем способам доступа, не только к API. Для личного, академического и внутреннего исследовательского использования бесплатный OAuth-тариф и сценарии Thunderbit обычно укладываются в рамки разумного использования.

Шпаргалка по лимитам:

СценарийЛимитЧто произойдёт
Авторизованный доступ (OAuth)60–100 запросов/минPRAW управляет этим автоматически
Неавторизованный доступ (.json, HTML)~10–30 запросов/мин429 Too Many Requests
Обычный User-AgentСильно ограничивается403 Forbidden или тихая блокировка

Всегда задавайте описательную строку User-Agent. Это самая частая причина, по которой новички сталкиваются с ошибками 429 или 403.

Храните и структурируйте данные аккуратно

  • Используйте DataFrame pandas с явным порядком столбцов для предсказуемого экспорта в CSV/Excel
  • Преобразуйте created_utc в читаемое время: pd.to_datetime(df["created_utc"], unit="s")
  • Удаляйте дубликаты по id, если собираете данные из нескольких сортировок (hot, new и top часто пересекаются)
  • Обрабатывайте удалённых авторов: str(post.author) if post.author else "[deleted]"

Корректно обрабатывайте типовые ошибки

ОшибкаПричинаРешение
429 Too Many RequestsПревышен лимит запросов (60–100 req/min для OAuth)Используйте экспоненциальную задержку; проверьте заголовок X-Ratelimit-Reset
403 ForbiddenПлохой User-Agent или заблокированный IPИспользуйте уникальный, описательный UA; убедитесь, что OAuth-приложение активно
None authorУдалённый или заблокированный аккаунтОборачивайте в if post.author else "[deleted]"
prawcore.TooManyRequestsСработал внутренний лимит PRAWУвеличьте ratelimit_seconds или распределите запросы равномерно
5xx или 413 на больших деревьяхПерегрузка backend Reddit на глубоких веткахОберните replace_more() в retry-логику; ограничьте глубину обхода

Сценарии использования скрапинга Reddit: что можно делать с этими данными?

Скрапинг — это только первый шаг. Вот что действительно даёт результат:

  • Отделы продаж: мониторинг r/SaaS, r/smallbusiness или r/Entrepreneur на посты вроде «ищу инструмент, который умеет X». Передавайте найденные совпадения в списки лидов или CRM-воркфлоу. Для ежедневного мониторинга используйте планировщик Thunderbit.
  • Маркетинг и контент-команды: отслеживайте упоминания бренда, анализируйте тональность и извлекайте популярные вопросы для идей контента. Совмещайте выгрузки Reddit с Google Sheets для командной работы.
  • Ecommerce и операционные команды: отслеживайте обсуждения продуктов конкурентов на предмет повторяющихся жалоб. Сабреддиты вроде r/BuyItForLife и нишевые сообщества — настоящая кладезь обратной связи о продукте.
  • Исследователи и аналитики: собирайте NLP-датасеты — в академических статьях 2024 года использовались наборы данных от до для классификации тональности и эмоций. Корпус, собранный с помощью PRAW, можно использовать как источник, на который можно ссылаться в рецензировании.

Если хотите углубиться в тему или , мы подробно разбирали эти сценарии в блоге Thunderbit.

Итоги

Скрапинг Reddit в 2025 году совсем не такой, как два года назад. Изменения API в 2023 году убили Pushshift, закрыли любимые сторонние приложения и ввели платные уровни доступа.

Но бесплатный тариф по-прежнему жив и подходит для личного и академического использования, а способов получить данные стало даже больше.

Краткий итог по каждому методу:

reddit-scraping-methods.webp

Опытный Python-разработчик вы или человек, которому к обеду нужна таблица, — один из этих четырёх способов вам подойдёт. Если хотите вообще обойтись без кода, можете и посмотреть, как он справляется с Reddit за пару кликов. А если хотите дальше прокачивать навыки Python-скрапинга, сохраните этот материал в закладки — я буду обновлять его по мере изменений в экосистеме Reddit.

Заодно посмотрите наши материалы о , и .

FAQ

Законно ли скрапить Reddit с помощью Python?

В Reddit запрещает коммерческий скрапинг без письменного разрешения. Бесплатный OAuth-тариф доступен для личного, некоммерческого и академического использования. С юридической точки зрения это правило не зависит от канала доступа — оно действует, используете ли вы API, .json endpoint или HTML-скрапинг. Всегда проверяйте актуальные условия Reddit перед масштабным сбором данных.

Работает ли PRAW после изменений API Reddit в 2023 году?

Да. PRAW 7.8.1 (октябрь 2024) активно поддерживается и автоматически работает в рамках . Изменения ценовой политики 2023 года в основном затронули высоконагруженное и коммерческое использование API, а не типовые сценарии скрапинга через PRAW.

Можно ли скрапить Reddit без API-ключа?

Да — .json endpoint и HTML-парсинг через BeautifulSoup работают без API-ключей. тоже не требует API-ключа. Но все три метода для коммерческого использования всё равно подчиняются правилам Reddit.

Как собирать не только посты, но и комментарии Reddit?

С помощью PRAW используйте submission.comments.replace_more(limit=10), а затем submission.comments.list(), чтобы превратить вложенное дерево комментариев в список. В Thunderbit можно использовать скрапинг подстраниц, чтобы автоматически обогатить список постов данными из комментариев каждой ветки.

Какой способ самый быстрый для скрапинга Reddit без программирования?

позволяет собирать посты и комментарии Reddit буквально за два клика и сразу экспортировать данные в Excel, Google Sheets, Airtable или Notion — без Python, без API-ключа и без настройки.

Подробнее

Содержание

Попробуй Thunderbit

Собирай лиды и другие данные всего в 2 клика. На базе AI.

Получить Thunderbit Это бесплатно
Извлекай данные с помощью AI
Легко передавай данные в Google Sheets, Airtable или Notion
Chrome Store Rating
PRODUCT HUNT#1 Product of the Week