Mr.Python

python requestlib module

2 ارسال در این موضوع قرار دارد

ماژول زیر با استفاده از socket نوشته شده (به صورت مستقیم)

یه نکته ای بگم خیلی از کد نویس ها فکر میکنن requests با urrlib فرق داره . اصلا لازم نیست حتی فکر کنی چون اگر سورس های کتابخونه requests رو نگاه کنیم میبینیم که خود requests‌هم با ماژول urllib3 نوشته شده! پس فرقی باهم ندارن . تفاوت فقط در ظاهر هست . در باطن همگی با استفاده از سوکت ها کار میکنند. پس اینکه این دو ماژول رو از هم تفکیک کنیم اشتباهه .  البته من هم تا ((برنامه نویس) )شدن راه طولانی رو در پیش دارم .

برای استفاده اول فایل setup.exe رو به همراه requestlib.py به دسکتاپ منتقل کنید و بعد setup.exe رو اجرا کنید تا اسکریپت در محل پکیج ها قرار بگیره.

 

با استفاده از این ماژول میتونید به صفحات وب درخواست ارسال کنید . تمام عملیات وب رو با این ابزار انجام بدید. کارایی این ماژول مثل ماژول requests و urllib هست. اما در ورژن اولیه فقط پارامتر های headers , data , proxies , timeout قرار گرفته . یعنی میتونید دیتا و هدر دلخواهتون رو قرار بدید . پروکسی و timeout هم همینطور.

مثال :

from requestlib import CreateRequest
request_obj = CreateRequest('http://guardiran.org')
response = request_obj.get()
response.text # source code
response.status_code # status code
response.reason # response reason
response.cookies # response cookies

یا 

res = CreateRequest('http://guardiran.org').get()

با توجه به اینکه redirects هارو تو ورژن بعدی میخوایم قرار بدیم پس اگر کد جا به جای 302 دریافت کردید کافیه توی هدر مورد نظرتون Host‌رو قرار بدید .

res = CreateRequest('http://guardiran.org', headers={'Host':'guardiran.org'}).get()

برای درخواست های POST‌میتونید بجای get بنویسید post.

خروجی ها همگی با byte انکود شده اند.

پروکسی های socks 5 , socks 4 , http , ssl پشتیبانی میشوند.

در ورژن های بعدی redirects ها و هدر های پاسخ قرار میگیرد. همچنین url و نمایش انکود ارسالی.

 

سورس کد رو ساده نوشتیم پس میتونید خودتون هم تغییراتی بدید.

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

نسخه جدید .

+نمایش هدر های پاسخ

+نمایش url

res = CreateRequest('http://guardiran.org').get()
print(res.response) # returns response headers
print(res.url) # returns url
print(res.cookies) # returns all response cookies
print(res.text) # returns page source code
print(res.status_code) # returns status code as string type
print(res.reason) # returns response Reason

برای جلوگیری از خطای 301 (status code) حتما باید مقدار Host رو تو هدر قرار بدید.

 

[guardiran.org]requestlib.rar

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری