<p>request.exceptions.InvalidSchema: تبعيات مفقودة لدعم SOCKS.</p>

تم إنشاؤها على ١٧ أغسطس ٢٠١٦  ·  7تعليقات  ·  مصدر: psf/requests

قائمة مرحبا
لدي مشكلة فقدان التبعيات لدعم SOCKS. مع طلبات الإصدار 2.11 من الوحدة النمطية ،

ولكن مع إصدار الوحدة النمطية للطلبات 2.10 ، تعمل وحدة الطلبات بشكل جيد

بيئتي:
أعلن -x VIRTUAL_ENV = "/ home / hadn / python3"
إعلان -x VTE_VERSION = "3803"
إعلان -x WINDOWID = "33554439"
قم بالإعلان عن -x WINDOWPATH = "1"
أعلن -x XAUTHORITY = "/ run / gdm / auth-for-hadn-0O4FTR / database"
أعلن -x XDG_CURRENT_DESKTOP = "جنوم- كلاسيكي: جنوم "
أعلن -x XDG_MENU_PREFIX = "جنوم-"
أعلن -x XDG_RUNTIME_DIR = "/ run / user / 1000"
أعلن -x XDG_SEAT = "seat0"
أعلن -x XDG_SESSION_DESKTOP = "جنوم-كلاسيك"
أعلن -x XDG_SESSION_ID = "2"
أعلن -x XDG_VTNR = "1"
أعلن -x XMODIFIERS = "@ im = ibus"
إعلان -x _system_arch = "x86_64"
أعلن -x _system_name = "CentOS"
أعلن -x _system_type = "Linux"
أعلن -x _system_version = "7"
أعلن -x all_proxy = " الجوارب: //proxy.hcm.fpt.vn : 80 /"
أعلن -x ftp_proxy = " http://proxy.hcm.fpt.vn : 80 /"
أعلن -x http_proxy = " http://proxy.hcm.fpt.vn : 80 /"
أعلن -x https_proxy = " http://proxy.hcm.fpt.vn : 80 /"

(python3) [ hadn @ rad-hadn4 ~] $ /home/hadn/Laravel/learning_bootstrap_v4/film/film_le.sh
Traceback (آخر مكالمة أخيرة):
ملف "/home/hadn/Laravel/learning_bootstrap_v4/film/film_le_crawler_page_1.py" ، سطر 24 ، في
html_content = session.get (url)
ملف "/home/hadn/python3/lib/python3.4/site-packages/requests/sessions.py" ، السطر 483 ، في get
إرجاع self.request ('GET' ، url ، * _kwargs)
ملف "/home/hadn/python3/lib/python3.4/site-packages/requests/sessions.py" ، السطر 471 ، في الطلب
Resp = self.send (الإعدادية ، * _send_kwargs)
ملف "/home/hadn/python3/lib/python3.4/site-packages/requests/sessions.py" ، السطر 581 ، في الإرسال
r = adapter.send (طلب ، * _kwargs)
ملف "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py" ، السطر 384 ، في الإرسال
conn = self.get_connection (request.url ، وكلاء)
ملف "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py" ، السطر 287 ، في get_connection
proxy_manager = self.proxy_manager_for (وكيل)
ملف "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py" ، السطر 183 ، في proxy_manager_for
* _proxy_kwargs
ملف "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py" ، السطر 43 ، في SOCKSProxyManager
رفع InvalidSchema ("التبعيات المفقودة لدعم SOCKS.")
request.exceptions.InvalidSchema: تبعيات مفقودة لدعم SOCKS.

التعليق الأكثر فائدة

$ pip install requests[socks]

ال 7 كومينتر

$ pip install requests[socks]

المشكلة المحددة هنا هي أننا في 2.11 بدأنا في دعم all_proxy ، والذي قمت بإعداده كوكيل SOCKS. هذا يعني أننا سنحاول استخدام بروكسي SOCKS ونفشل.

Lukasakennethreitz هل يمكنني تعطيل بروكسي SOCKS ؟؟؟

@ alochym01 إذا كنت لا تريد ذلك ، فلماذا يتم وضعه في بيئتك؟ بغض النظر ، إذا كنت تستخدم جلسة مع trust_env=False فلن تحدث هذه المشكلة مرة أخرى ، على الرغم من أنك ستفقد وكيل HTTP الخاص بالبيئة.

ومع ذلك ، يبدو أن هناك خطأ هنا: ستفضل الطلبات all_proxy على الوكيل الخاص بالمخطط. أعتقد أن هذه فكرة سيئة. @ sigmavirus24 ، هل يجب علينا إعادة ترتيب ذلك؟

Lukasa لذا ، كما أفهمها ، all_proxy هو ما يجب استخدامه إذا لم يتم تعيين http(s)_proxy . وبشكل عام ، يجب استخدامه إذا لم يتم ضبط <protocol>_proxy . بناءً على هذا الفهم (وعلى افتراض أنني على صواب) ، نعم ، يجب علينا بالتأكيد إعادة ترتيب ذلك. دعنا نبلغ عن خطأ جديد لذلك.

@ alochym01 يبدو أن هناك خيارًا آخر وهو استخدام proxies={'all': None} .

Lukasa proxies = {'all': None} لا يعمل لأن الشبكة يجب أن تمر عبر الوكيل ، لذلك أرى أنك فتحت الإصدار الجديد :)
فلنتابع الإصدار الجديد: +1:

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات