Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (3)

Лучшие ответы пользователя

Все ответы (1)
  • Почему Connection aborted при подключении к существующему URL Яндекс Погоды?

    @Damakshn
    По всей видимости, ЯндексПогода принимает вашу программу за бота и сбрасывает соединение. Чтобы этого избежать, нужно притвориться браузером, т.е. сделать так, чтобы отправляемый программой http-запрос имел заголовок User-agent. Плюс может потребоваться запрашивать данные несколько раз по этой же причине (вылезает ошибка RemoteDisconnected). Я использовал сессии, получилось.

    import requests
    headers = {'User-agent':'Mozilla/5.0','Referer':'http://www.python.org/'}
    session = requests.Session()
    adapter = requests.adapters.HTTPAdapter(max_retries=10)
    session.mount('http://', adapter)
    # запрашиваем нужные урлы
    for url in urls:    
        response = session.request('GET', url, headers = headers)
        # делаем что-то с response...
        reponse.close()
    session.close()

    Ещё могут быть проблемы из-за старой версии Питона, писал в 2.7 через urllib2 - не работало, в 3.5 - все норм.
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (1)