2017-07-24 5 views
1

Ich habe Schwierigkeiten, Anfragen zu erhalten, die Proxy-Adresse zu verwenden, wenn Sie eine Website anfordern. Es wird kein Fehler zurückgegeben, aber durch das Zurückgeben des Skripts http://ipecho.net/plain kann ich meine eigene IP sehen, nicht die des Proxy.Python-Requests-Bibliothek verwendet Proxy nicht

import random 
import requests 
import time 

def proxy():   
    proxy = (random.choice(proxies)).strip() 
    print("selected proxy: {0}".format(proxy)) 
    url = 'http://ipecho.net/plain' 
    data = requests.get(url, proxies={"https": proxy}) 
    print(data) 
    print("data returned: {0}".format(data.text)) 

proxies = [] 
with open("proxies.txt", "r") as fi: 
    for line in fi: 
     proxies.append(line) 

while True: 
    proxy() 
    time.sleep(5) 

Die Struktur der proxies.txt Datei lautet wie folgt:

https://95.215.111.184:3128 
https://79.137.80.210:3128 

Kann jemand dieses Verhalten erklären?

+0

Welche Ausgabe erhalten Sie? –

Antwort

6

Die URL, die Sie übergeben, ist http und Sie geben nur einen https Proxy-Schlüssel an. Sie müssen einen Schlüssel in Ihrem proxies Wörterbuch für beide http und https erstellen. Diese können auf denselben Wert zeigen.

proxies = {'http': 'http://proxy.example.com', 'https': 'http://proxy.example.com'} 
data = requests.get(url, proxies=proxies) 
Verwandte Themen