urllib3

نرم افزار تصویر:
urllib3
جزئیات نرم افزار:
نسخه: 1.5
ها تاریخ: 20 Feb 15
توسعه دهنده: Andrey Petrov
پروانه: رایگان
محبوبیت: 2

Rating: nan/5 (Total Votes: 0)

در urllib3 یک کتابخانه پایتون HTTP با تجمع اتصال موضوع امن و فایل ارسال پشتیبانی است.
نکات برجسته:
و nbsp؛ * استفاده مجدد اتصال سوکت همان برای درخواست های متعدد (HTTPConnectionPool)
و nbsp؛ * * * * ارسال فایل (encode_multipart_formdata)
و nbsp؛ * ساخته شده در تغییر مسیر و ترتیب دسته (اختیاری)
و nbsp؛ * امن موضوع-
چه اشتباه urllib و urllib2 است؟
دو ویژگی مهم از دست رفته از کتابخانه استاندارد پایتون وجود دارد: اتصال مجدد با استفاده از / تجمع و ارسال فایل. این نمی وحشتناکی سخت برای پیاده سازی این خود، اما آن را بسیار آسان تر به استفاده از یک ماژول که در حال حاضر برای شما انجام کار.
پایتون کتابخانه استاندارد urllib و urllib2 کمی برای انجام با یکدیگر. آنها طراحی شده بودند به مستقل و مستقل، هر حل محدوده های مختلف از مشکلات، و urllib3 زیر به همین منوال.
چرا می خواهید من به استفاده مجدد از اتصالات؟
عملکرد. هنگامی که شما به طور معمول انجام یک تماس urllib، اتصال سوکت جداگانه با هر درخواست ایجاد می شود. با استفاده مجدد از سوکت های موجود (از HTTP 1.1 پشتیبانی)، درخواست منابع کمتر را تا بر روی پایان سرور، و همچنین ارائه یک زمان پاسخ دهی سریع تر در پایان مشتری. با برخی از معیار های ساده (آزمون / benchmark.py را ببینید)، دانلود 15 آدرس ها از google.com است در مورد دو برابر سریع در هنگام استفاده از HTTPConnectionPool (که با استفاده از 1 اتصال) از با استفاده از urllib ساده (که با استفاده از 15 اتصالات).
این کتابخانه مناسب برای است:
و nbsp؛ * گفتگو با API
و nbsp؛ * خزش وب سایت
و nbsp؛ * هر موقعیتی که در آن قادر بودن به ارسال فایل ها، رسیدگی به تغییر مسیر، و در حال تلاش مجدد مفید است. این نسبتا سبک وزن است، بنابراین می توان آن را برای هر چیزی استفاده می شود!
مثال:
برو به ویکی مثال برای نمونه خوب بیشتر نحو برجسته شده است.
اما، داستان کوتاه مدت:
از واردات urllib3 HTTPConnectionPool
API_URL = 'http://ajax.googleapis.com/ajax/services/search/web'
http_pool = HTTPConnectionPool.from_url (API_URL)
زمینه = {'V': '1.0'، 'Q': 'urllib3'}
R = http_pool.get_url (API_URL، زمینه)
r.status چاپ، r.data

چه جدید در این نسخه است:

اضافه شده urllib3.add_stderr_logger () برای سرعت قادر می سازد STDERR اشکال زدایی ورود به سیستم در urllib3.
بومی تجزیه URL کامل (از جمله تایید، مسیر، پرس و جو، قطعه) موجود در urllib3.util.parse_url (URL).
ساخته شده در تغییر مسیر خواهد روش برای تغییر مواجه 'اگر کد وضعیت 303. است (شماره # 11)
urllib3.PoolManager نوار طرح و میزبان قبل از ارسال URI درخواست. (شماره # 8)
استثنا urllib3.exceptions.DecodeError جدید برای زمانی که رمز گشایی خودکار، بر اساس هدر نوع مطلب، نتواند.
اشکال ثابت با کاهش استخر و اتصالات نشت (شماره # 76). اضافه شده اتصال صریح بسته شدن در استخر اخراج. او urllib3.PoolManager.clear ().
99٪ - & gt؛ به 100٪ پوشش آزمون واحد.

صغیر رفع مربوط به AppEngine:

چه جدید در نسخه 1.4 است.
روشن از mimetools.choose_boundary به uuid.uuid4 ().
تجزیه url بهبود. (شماره # 73)
پشتیبانی از IPv6 آدرس. (شماره # 72)

جدید در نسخه 1.3 است:

به حذف پیش 1.0 API توصیه نمی شوند.
یاران Refactored به submodule urllib3.util.
رمزگذاری ثابت چند برای حمایت از لیست از تاپل برای کلید با ارزش های متعدد. (شماره # 48)
هدر ثابت چند مجموعه-کوکی در پاسخ دریافت نمی درستی در پایتون 3. با هم ادغام شدند (شماره # 53)
پشتیبانی AppEngine با Py27. (شماره # 61)
رفع encode_multipart_formdata جزئی مربوط به پایتون 3 رشته در مقابل بایت.

جدید در نسخه 1.2.2 است:

به اشکال ثابت بسته بندی حمل و نقل آزمون requirements.txt نیست. (شماره # 47)

جدید در نسخه 1.2.1 است:

به اشکال ثابت دیگر مربوط به زمانی که ماژول اس اس ال در دسترس نیست. (شماره # 41)
خطاهای تجزیه محل سکونت در حال حاضر افزایش urllib3.exceptions.LocationParseError که از ValueError به ارث برده.

جدید در نسخه 1.2 است:

او پایتون پشتیبانی 3 (تست شده بر روی 3.2.2)
پشتیبانی 2.5 پایتون کاهش یافته است (تست شده بر روی 2.6.7، 2.7.2)
استفاده از select.poll به جای select.select برای سیستم عامل است که آن را حمایت می کنند.
استفاده از Queue.LifoQueue به جای Queue.Queue برای استفاده مجدد اتصال تهاجمی تر. با قابلیت تنظیم توسط فارغ ConnectionPool.QueueCls.
ثابت ImportError در طول نصب هنگامی که ماژول اس اس ال در دسترس نیست. (شماره # 41)
ثابت PoolManager تغییرمسیر بین طرح (مانند HTTP - & gt؛ به HTTPS) به درستی تکمیل نیست. (شماره # 28، کشف شده توسط شماره # 10 در V1.1)
dummyserver منتقل شده به استفاده از گردباد به جای webob + eventlet. حذف غیر اصلی پشتیبانی نشده پایانه (Backend) تست dummyserver. اضافه شده آزمون در سطح سوکت.
تست های بیشتر. دستاورد را کلیک کنید: 99٪ پوشش.

جدید در نسخه 1.1 است:

در Refactored dummyserver به خود ماژول فضای نام ریشه آن (مورد استفاده برای تست).
اضافه شده تایید نام هاست برای VerifiedHTTPSConnection توسط vendoring در ssl_match_hostname Py32 است. (شماره # 25)
ثابت HTTP متقابل میزبان تغییر مسیر در هنگام استفاده از PoolManager. (شماره # 10)
decode_content ثابت در حال نادیده گرفت که از طریق urlopen تنظیم شده است. (شماره # 27)
اشکالات مربوط به فاصله ثابت شده است. (مسائل # 17، # 23)

جدید در نسخه 1.0.2 است:

در تایپی ثابت در VerifiedHTTPSConnection که تنها به عنوان یک اشکال حال حاضر اگر شما با استفاده از شی دستی. (pyos تشکر)
RecentlyUsedContainer ساخته شده (و به تبع آن PoolManager) موضوع امن توسط پیچیدن ورود دسترسی در یک mutex تر. (christer تشکر)
RecentlyUsedContainer آزمون (__delitem__ اصلاح و رفتار __getitem__)، با مانند DICT تر ساخته شده است. باید کد urllib3 هسته تاثیر نمی گذارد.

چه در نسخه 1.0.1 جدید است:

رفع اشکال که در آن اتصال می کنید به استخر بازگشت دو بار، باعث غیر اصلی و & quot؛ HttpConnectionPool کامل و & quot است. هشدارهای وارد شوید.

مورد نیاز:

پایتون

نرم افزار های دیگر از توسعه دهنده Andrey Petrov

urllib3
urllib3

12 May 15

نظرات به urllib3

نظر یافت نشد
اضافه کردن نظر
روشن کردن تصاویر!