Настройте прокси за legacy пътя Google urllib на SpeechRecognition
Стартирайте задачата с двете подходящи прокси променливи и разграничете този backend от отделния client на recognize_google_cloud.
За legacy Google backend, който използва подразбиращия се opener на urllib, стартирайте Python с:
http_proxy=http://proxy.example:8080 https_proxy=http://proxy.example:8080 python recognize_job.pyBackend-ът изгражда Request на urllib и извиква urlopen. Отделна сесия на Requests в заобикалящото приложение не може да зададе маршрута на този opener.
И двете променливи са от значение, защото подразбиращият се legacy endpoint е HTTP. Задаването само на https_proxy оставя тази подразбираща се HTTP заявка ненастроена. Техните стойности описват протокола на посредника. За тест с нечувствително аудио списъкът с HTTP прокси предоставя публични кандидати за тези стойности.
Задайте operation_timeout на разпознавача, за да ограничите тази операция urlopen, когато е необходимо. Таймаутът за слушане с микрофон управлява по-ранен етап.
recognize_google_cloud използва вместо това client на Google Cloud Speech със собствен transport и удостоверяване. Запазете името на backend-а, ефективния endpoint и неуспешния етап заедно с грешката, вместо да копирате legacy метода в site-packages, за да промените маршрут, който urllib вече поддържа.