Дајте PRAW-у 8.0.3 Requests сесију свесну SOCKS-а кроз requestor_kwargs:

import praw
import requests

session = requests.Session()
session.proxies.update({
    'http': 'socks5h://proxy.example:1080',
    'https': 'socks5h://proxy.example:1080',
})
reddit = praw.Reddit(
    client_id=client_id,
    client_secret=client_secret,
    user_agent=user_agent,
    requestor_kwargs={'session': session},
)

Користите Reddit акредитиве и user agent апликације, затим упућујте API позиве кроз ову reddit инстанцу. Управљајте њеним requestor-ом и сесијом кроз уобичајено чишћење апликације.

Requests захтева своју SOCKS подршку. socks5h делегира разрешавање имена одредишта на proxy; socks5 га разрешава локално.

Јавни endpoint са листе SOCKS5 proxy-ја може дати адресу у овој мапи. Прво креирајте Session() и ажурирајте његов атрибут proxies као што је приказано. Његов конструктор нема кључну реч proxies.

Достављена сесија задржава интеграцију Requests-а са окружењем, па наслеђена proxy и bypass подешавања могу утицати на избор руте. За руту потпуно у власништву апликације прегледајте trust_env. Његово онемогућавање такође захтева достављање свих trust и аутентификацијских улаза који су раније долазили из тог окружења.

Повезани чланци