Δώστε στο 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 αναθέτει την επίλυση του ονόματος προορισμού στον διακομιστή μεσολάβησης· το socks5 την επιλύει τοπικά.

Ένα δημόσιο τελικό σημείο από τη λίστα διακομιστών μεσολάβησης SOCKS5 μπορεί να παρέχει τη διεύθυνση σε αυτόν τον χάρτη. Δημιουργήστε πρώτα το Session() και ενημερώστε το χαρακτηριστικό του proxies όπως φαίνεται. Ο κατασκευαστής του δεν έχει λέξη-κλειδί proxies.

Η παρεχόμενη συνεδρία διατηρεί την ενσωμάτωση του Requests με το περιβάλλον, οπότε κληρονομημένες ρυθμίσεις μεσολάβησης και παράκαμψης μπορούν να επηρεάσουν την επιλογή διαδρομής. Για διαδρομή που ανήκει πλήρως στην εφαρμογή, εξετάστε το trust_env. Η απενεργοποίησή του απαιτεί επίσης την παροχή τυχόν στοιχείων εμπιστοσύνης και ελέγχου ταυτότητας που προηγουμένως προέρχονταν από αυτό το περιβάλλον.

Σχετικά άρθρα