הגדרת ה-proxy עבור נתיב legacy Google urllib של SpeechRecognition
הפעילו את המשימה עם שני משתני ה-proxy הרלוונטיים והבחינו בין ה-backend הזה לבין ה-client הנפרד של recognize_google_cloud.
עבור ה-backend legacy של Google שמשתמש ב-opener ברירת המחדל של urllib, הפעילו את Python עם:
http_proxy=http://proxy.example:8080 https_proxy=http://proxy.example:8080 python recognize_job.pyה-backend בונה Request של urllib וקורא ל-urlopen. הפעלת Requests נפרדת באפליקציה הסובבת אינה יכולה להגדיר את המסלול של אותו opener.
שני המשתנים רלוונטיים משום שנקודת הקצה legacy המוגדרת כברירת מחדל היא HTTP. הגדרה של https_proxy בלבד משאירה את בקשת ה-HTTP הזו ללא תצורה. הערכים שלהם מתארים את פרוטוקול המתווך. לבדיקה עם אודיו לא רגיש, רשימת ה-proxy של HTTP מספקת מועמדים ציבוריים לערכים אלה.
הגדירו את ה-operation_timeout של המזהה כדי להגביל את פעולת ה-urlopen הזו בעת הצורך. פסק זמן להאזנה במיקרופון שולט בשלב מוקדם יותר.
recognize_google_cloud משתמש במקום זאת ב-client של Google Cloud Speech, עם transport ואימות משלו. שמרו את שם ה-backend, נקודת הקצה האפקטיבית והשלב שנכשל יחד עם השגיאה במקום להעתיק את השיטה legacy אל site-packages כדי לשנות מסלול ש-urllib כבר תומך בו.