PRAW, SOCKS farkında bir Requests oturumunu kabul eder
PRAW’ın requestor’ına yapılandırılmış bir Requests oturumu verin; SOCKS sunucusunun Reddit hedef adlarını çözmesi gerektiğinde socks5h kullanın.
PRAW 8.0.3’e requestor_kwargs aracılığıyla SOCKS farkında bir Requests oturumu verin:
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},
)
Uygulamanın Reddit kimlik bilgilerini ve user agent’ını kullanın, ardından API çağrılarını bu reddit örneği üzerinden yapın. requestor’ını ve oturumunu uygulamanın olağan temizliğiyle yönetin.
Requests kendi SOCKS desteğini gerektirir. socks5h hedef adı çözümlemesini proxy’ye devreder; socks5 ise yerelde çözer.
SOCKS5 proxy listesinden genel bir uç nokta bu haritadaki adresi sağlayabilir. Önce Session() oluşturun ve gösterildiği gibi proxies özniteliğini güncelleyin. Kurucusunda proxies anahtar sözcüğü yoktur.
Verilen oturum Requests’in ortam entegrasyonunu korur; bu nedenle devralınan proxy ve atlama ayarları rota seçimini etkileyebilir. Tamamen uygulamaya ait bir rota için trust_env’i gözden geçirin. Bunu devre dışı bırakmak, daha önce o ortamdan gelen tüm güven ve kimlik doğrulama girdilerinin de sağlanmasını gerektirir.