запросы — как изменить отправленное местоположение?

#python #python-requests

#python #python-запросы

Вопрос:

Мой код работает, когда я делаю request из location machine. Когда я пытаюсь сделать request from AWS EC2 , я получаю следующую ошибку:

запросы.исключения.ReadTimeout: HTTPSConnectionPool(host =’www1.xyz.com ‘, порт=443): время ожидания чтения истекло. (время ожидания чтения = 20)

Я попытался проверить url , и это не было проблемой. Затем я пошел дальше и попытался посетить страницу, используя url и hidemyass webproxy с местоположением, установленным на AWS EC2 компьютере, он получил 404 .

Код:

 # Dummy URL's
header = {
        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36",
        "X-Requested-With": "XMLHttpRequest"
    }

url = 'https://www1.xyz.com/iKeys.jsp?symbol={}amp;date=31DEC2020'.format(
        symbol)
raw_page = requests.get(url, timeout=10, headers=header).text
 

Я попытался настроить прокси на другой IP-адрес в request , который я искал в Интернете:

 proxies = {
     "http": "http://125.99.100.193",
     "https": "https://125.99.100.193",}
raw_page = requests.get(url, timeout=10, headers=header, proxies=proxies).text
 

Все та же ошибка.

1- Нужно ли указывать порт в прокси? Может ли это быть причиной ошибки при настройке прокси?

2- Что может быть решением для этого?

Спасибо

Комментарии:

1. Не используйте этот timeout параметр в вашем запросе

2. @AdamStrauss попробовал, ответа не было почти 10 минут.

3. Может быть, ваш целевой URL-адрес блокирует запросы с EC2 hostname / IP-адреса?

4. @barny, да, я думаю, что это проблема региона. т.е. на локальном компьютере, когда я использую прокси hidemyass и устанавливаю для него регион EC2, веб-сайт выдает 404.