كيفية تجاهل "أدخل اسم المستخدم للخاص وكيل الوصول" موجه؟

StackOverflow https://stackoverflow.com/questions/1741360

  •  20-09-2019
  •  | 
  •  

سؤال

وأنا باستخدام urllib.urlopen باستخدام http الوكلاء وأحيانا (ربما عندما تتطلب إذنا) I الحصول على المطالبة التالية المطبوع إلى وحدة التحكم:

Enter username for Private Proxy Access (country) at xxx.xxx.xxx.xxx:xxxx

وكيف يمكنني رفع استثناء على هذا يحدث شيء؟

وفيما يلي مثال:

from urllib import urlopen

p = '64.79.209.238:36867'
print urlopen('http://google.com', proxies={'http': 'http://'+p})

في حالة وفاة بالوكالة المذكورة في وقت قريب جدا، وهنا بعض البدلاء 64.79.197.36:43444، 64.79.209.203:34968، 64.79.197.36:43444، 209.59.207.197:3438

هل كانت مفيدة؟

المحلول

وتحتاج إلى طريقة FancyURLopener.prompt_user_passwd الكتابة الفوقية:

class AuthorizationRequired(Exception):

    pass


class MyURLOpener(urllib.FancyURLopener):

    def prompt_user_passwd(self, host, realm):
        raise AuthorizationRequired()


opener = MyURLOpener(proxies={'http': 'http://'+p})
fp = opener.open(url)

نصائح أخرى

وurllib.urlencode لا على أي وقت مضى طباعة هذه الرسالة. هذا الأسلوب لم يضرب الشبكة في المقام الأول. المشكلة هي في مكان آخر.

وأعتقد أنك تقوم بتشغيل بعض الخفي آخرين في الخلفية التي يطبع الرسالة.

يرجى توفير كود استنساخه الدقيق والرسالة. مثال على الوكيل الذي مشغلات أن الرسالة أيضا أن تكون جيدة.

وأنا بتصرف كود دينيس قليلا لهذه:

import urllib
urllib.FancyURLopener.prompt_user_passwd = lambda *a, **k: (None, None)

ووسوف تعطيل المرور مما دفع تماما

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top