Реферальна програма →
ГоловнаПроксі дляПроксі для Reddit
Reddit

Проксі для Reddit

Більшість сторінок за цією темою досі описують Reddit, якого давно немає. Ми не стали це повторювати, а виміряли поточну поведінку, і результат змінює те, що тут варто купувати.

Що Reddit робить зараз

  • Він просто відмовляє JSON-шляху без авторизації. Ми перевіряли із серверної адреси: звичайна сторінка сабредиту відповідала 200, а той самий шлях із .json наприкінці відповідав 403, тричі поспіль, і з браузерним user-agent, і з описовим. З адресою все було гаразд. Закритий ендпоінт. Це повторюється двома командами curl.
  • Він забороняє всіх краулерів у robots.txt. Зараз у файлі правило з підстановочним user-agent і забороною на весь сайт, а далі відсилання до публічної контентної політики. Це заявлена позиція, а не технічна перешкода, і ротація адрес із нею взагалі ніяк не стикається.
  • Він рахує використання API за вашим зареєстрованим OAuth-клієнтом, а правила лишають за ним право встановлювати і застосовувати ці ліміти. Комерційне використання і дослідження понад ліміти прописані як те, що потребує окремої угоди з Reddit.
  • Він вимагає не приховувати, хто ви. У правилах Data API сказано, що ви зобов’язані користуватися виданими вам доступами і не повинні спотворювати чи маскувати ні user-agent, ні OAuth-особу. Цю фразу варто перечитати двічі, перш ніж щось купувати за цією сторінкою.

Який наш продукт під яке завдання в Reddit

Два рядки прості. Третій це те, по що сюди приходять, і до нього спершу треба прочитати правила.

Що ви робитеЩо взяли б миЧому саме це
Тримаєте зареєстрований клієнт APIсерверні IPv4постійна вихідна адреса під ваші ж логи, білі списки й атрибуцію. Ліміт вона не підніме, бо ліміти йдуть за вашим OAuth-клієнтом
Ведете акаунти, які мають виглядати не пов’язанимиISP або резидентські, по адресі на коженось де проксі в Reddit відпрацьовує гроші. Акаунти на спільному з’єднанні це найпростіший зв’язок, який можна провести
Заходите в Reddit із мережі, де він закритийрезидентські в країні, звідки він доступнийпитання зв’язності з чистим розв’язанням і найширше покриття країн, яке ми продаємо
Масовий збір поза APIспершу прочитайте правила, потім рахуйте бюджетJSON-шлях закритий, robots.txt забороняє обхід, а правила забороняють маскувати вашу особу. Ми краще це скажемо, ніж продамо вам під це адреси

Якщо робота справді дослідницька або справді комерційна, документований Reddit шлях це угода з Reddit, а не більший пул адрес. Комерційно для нас це гірша відповідь, а для вас краща.

Як налаштувати

Власного налаштування проксі у Reddit немає. Проксі прописується в клієнті API або у профілі браузера, де живе акаунт.

Reddit і наші точки входу
# Зареєстрований клієнт API, PRAW, через статичну адресу:
# PRAW працює поверх requests, тому годяться звичайні змінні оточення
export HTTPS_PROXY="http://login:password@198.51.100.20:50100"

# Reddit просить описовий user-agent, а правила забороняють його підробляти:
# platform:app-id:version (by /u/your-username)

# Перевірка з розділу вище, повторіть самі:
curl -o /dev/null -w "%{http_code}\n" https://www.reddit.com/r/programming/
curl -o /dev/null -w "%{http_code}\n" https://www.reddit.com/r/programming/hot.json

# Профіль антидетект-браузера під акаунт, по номеру сесії на кожен:
socks5://login_c_US_s_9_ttl_1h:password@proxy.sotaproxy.com:10000
  • По адресі на акаунт, якщо акаунти мають бути не пов’язані. Це та частина схеми в Reddit, яку проксі справді лагодить.
  • Ставте чесний описовий user-agent у будь-якому клієнті API. Reddit його просить, а правила забороняють його маскувати, тож хитрувати тут немає в чому.
  • Тримайте акаунт у країні, де його створено, і зведіть із нею профіль браузера.
  • Не закладайте бюджет збору під JSON-ендпоінт. Спершу перевірте поточну поведінку самі двома командами вище.

Що брати під Reddit

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

ISP-проксі

від $2.30 за IP на місяць, 24 країни

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

  • зареєстрована на домашнього провайдера, тому читається як людина з дому
  • нікуди не рухається, і усталений акаунт не стрибає країнами
  • трафік не рахується
  • 24 країни
  • із правилами API не робить нічого, а вся решта цієї сторінки саме про них

Резидентські проксі

від $2.00 за ГБ, 220+ країн

Під акаунти в країнах, куди ISP не дотягується, і щоб потрапити в Reddit там, де він закритий.

  • домашні адреси в більшій кількості країн, ніж у будь-якого іншого нашого продукту
  • сесійний суфікс утримує один вихід на час завдання
  • оплата за трафіком, тому легке використання коштує копійки
  • сесія закінчується з відходом домашнього пристрою, щонайбільше година
  • ротація не відкриває закритий ендпоінт, а JSON-шлях закритий

Серверні IPv4

від $1.50 за IP на місяць, 41 країна

Під зареєстрований клієнт API, якому потрібна одна передбачувана вихідна адреса.

  • найдешевша стабільна адреса, яку ми продаємо
  • трафік не рахується
  • знадобиться, коли щось на вашому боці має занести в білий список фіксовану адресу
  • розпізнається як серверна, а для акаунта це хибний сигнал
  • жодного ліміту не піднімає, Reddit рахує їх за вашим OAuth-клієнтом

Розділення акаунтів це те, по що сюди приходять найчастіше, і масштабується воно передбачувано: по адресі на акаунт, скільки б їх не було. Щодо збору ми поклали перед вами два документи вище замість того, щоб рахувати обсяг замовлення, бо таке рішення варто ухвалювати з ними перед очима.

Де помиляються

Закладають бюджет під трюк із .json

Дописати .json до адреси сабредиту було стандартним способом збирати Reddit повз API. Із серверної адреси він тепер відповідає 403, тоді як звичайна сторінка відповідає 200. Купівля адрес його не відкриває.

Підробляють user-agent

Reddit просить описовий, а правила Data API забороняють спотворювати і маскувати як user-agent, так і OAuth-особу. Це умова договору, а до договору проксі стосунку не має.

Купують проксі, щоб підняти ліміт API

Ліміти прив’язані до зареєстрованого OAuth-клієнта. Більше адрес під одним клієнтом не змінюють нічого, а обхід лімітів правила забороняють окремим пунктом.

Читають 200 на вебсторінці як дозвіл обходити сайт

Те, що сайт відкривається в браузері, і те, що robots.txt забороняє краулерів, це два різні твердження. Друге адресоване саме вашому скрипту.

Чого проксі тут не зробить

Він не відкриє заново JSON-ендпоінт без авторизації, не підніме ліміт, який рахується за вашим OAuth-клієнтом, не змінить того, що написано в robots.txt, і не зробить маскування вашої особи припустимим, коли прийняті вами правила його забороняють. Що він робить: тримає різні акаунти різними і приводить вас у Reddit із мереж, де він закритий. Ось і всі чесні межі. Це не юридична консультація, а джерела нижче наведені, щоб ви перевірили позицію, а не прийняли нашу.

Що питають насправді

Чи блокує Reddit проксі?

Для того, що відбувається зараз, це хибне питання. Ми перевіряли із серверної адреси: звичайна сторінка сабредиту відповідала 200, а та сама адреса з .json відповідала 403. Річ була не в адресі, а в ендпоінті. Дві команди curl покажуть вам те саме.

Чи можна парсити Reddit ротованими проксі?

Технічно по HTML-сторінках адреси ротувати можна. Перш ніж на цьому будувати, врахуйте, що robots.txt зараз забороняє всіх краулерів по всьому сайту, а правила Data API забороняють маскувати user-agent і OAuth-особу і забороняють обходити ліміти. Ротація не стикається з жодним із цих пунктів.

Чи допомагають проксі з лімітами API Reddit?

Ні. Використання рахується за вашим зареєстрованим OAuth-клієнтом, а правила лишають за Reddit право ці ліміти встановлювати і застосовувати і окремо забороняють їх обходити. Якщо потрібно більше, документований шлях це угода з Reddit.

Які проксі кращі під акаунти Reddit?

ISP під акаунти, які ви тримаєте: адреса закріплена на строк і читається як домашнє підключення. Резидентські там, де ISP не покриває потрібну країну. По адресі на акаунт, якщо вони мають виглядати не пов’язаними.

Скільки акаунтів Reddit на один IP?

Один, якщо акаунти не мають бути пов’язані між собою. Спільна адреса це найпростіший зв’язок, і це єдине на цій сторінці, що проксі запобігає надійно.

Резидентський проксі кращий за серверний для Reddit?

Для акаунтів так, і наш докладний розбір за акаунтами є за посиланням нижче. Для зареєстрованого клієнта API різниці немає, і можна платити менше.

Звідки взято твердження вище

Одне з тверджень на цій сторінці це наше власне вимірювання, а не документ, і в тексті це позначено. Усе інше це Reddit, який описує свою позицію.

  • robots.txt RedditДостатньо короткий, щоб прочитати повністю. Правило з підстановочним user-agent і забороною на весь сайт плюс відсилання до публічної контентної політики. Варто відкрити до планування будь-якого збору, бо це сайт каже автоматичним клієнтам, чого він хоче.
  • Правила Reddit Data APIПункт 2.8 вимагає користуватися виданими доступами і не спотворювати і не маскувати user-agent та OAuth-особу. Пункт 3.2 забороняє обходити і перевищувати документовані ліміти. Пункт 3.1 виносить комерційне використання і дослідження понад ліміти за окрему угоду з Reddit.
  • Довідник API RedditСама документація за ендпоінтами. Знадобиться, щоб зрозуміти, що дає офіційний шлях, а це і є те порівняння, яке варто зробити до рішення його обходити.