1 Вопрос: Скачать файл с помощью скрипта Python за корпоративным прокси

вопрос создан в Fri, Mar 29, 2019 12:00 AM

Я собираю сценарий, который будет загружать файл из Интернета .... Однако некоторые пользователи работают как корпоративный брандмауэр, так что это означает, что если вы @ home, то приведенный ниже код работает, но если вы находитесь в офисе, то он зависает, если вы не установите переменную прокси вручную, а затем запустите ....

Я думаю о том, чтобы создать оператор if ... Оператор if проверит IP-адрес пользователя, и если у него есть IP-адрес в 8.x или 9.x или 7.x, используйте этот прокси. .. В противном случае проигнорируйте и продолжайте загрузку

Код, который я использую для этой загрузки, приведен ниже ... Я довольно новичок в этом, поэтому я не уверен, как сделать оператор if для IP, а затем использовать прокси-компонент, чтобы любая помощь была бы полезной

import urllib.request
import shutil
import subprocess
import os
from os import system

url = "https://downloads.com/App.exe"
output_file = "C:\\User\\Downloads\\App.exe"
with urllib.request.urlopen(url) as response, open(output_file, 'wb') as out_file:
    shutil.copyfileobj(response, out_file)

    
0
  1. Похоже, что есть похожий вопрос уже
    2019-03-29 10: 54: 53Z
1 ответ                              1                         

Локальный IP можно прочитать как @nickthefreak прокомментировал, а затем установил прокси с помощью запросов lib:

import socket
import requests

URL = 'https://downloads.com/App.exe'

if socket.gethostbyname(socket.gethostname()).startswith(('8', '9', '7')):
    r = requests.get(URL, stream=True, proxies={'http': 'http://10.10.1.10:3128', 'https': 'http://10.10.1.10:1080'})
else:
    r = requests.get(URL, stream=True)

with open('C:\\User\\Downloads\\App.exe', 'wb') as f:
    for chunk in r:
        f.write(chunk)
    
0
2019-03-29 15: 04: 11Z
  1. Как добавить прокси-сервер?
    2019-03-29 14: 44: 44Z
  2. Использование requests lib. Смотрите мой обновленный ответ
    2019-03-29 15: 04: 31Z
источник размещен Вот