این کد یک برنامه ساده به زبان پایتون است که برای دریافت و نمایش آدرس IP عمومی دستگاه کاربر از طریق اینترنت طراحی شده است. توضیحات کامل در مورد عملکرد کد به شرح زیر است:
- وارد کردن کتابخانه:
- کتابخانه urllib.request برای ارسال درخواستهای HTTP به وبسایتها یا APIها استفاده میشود.
- تعریف تابع get_public_ip:
- این تابع مسئول ارسال درخواست به یک API برای دریافت آدرس IP عمومی دستگاه است.
- ارسال درخواست به API:
- از urllib.request.urlopen استفاده شده تا به API رایگان ipify در آدرس https://api.ipify.org درخواست فرستاده شود.
- پاسخ دریافتی (که حاوی آدرس IP است) خوانده میشود و با استفاده از decode('utf8') به رشته تبدیل میشود.
- نمایش آدرس IP:
- آدرس IP دریافتشده با استفاده از print به کاربر نمایش داده میشود.
- مدیریت خطاها:
- کد در یک بلوک try-except قرار گرفته تا از بروز خطاهای احتمالی جلوگیری کند.
- در صورت بروز هرگونه استثنا (مانند عدم دسترسی به اینترنت یا مشکلات در API)، پیام خطا همراه با جزئیات نمایش داده میشود.
- اجرای برنامه:
- با استفاده از عبارت if name == "main":، اطمینان حاصل میشود که تابع get_public_ip فقط زمانی اجرا شود که فایل به صورت مستقیم اجرا شود، نه هنگام وارد شدن به عنوان یک ماژول.
- سادگی
- استفاده از API رایگان
- مدیریت استثناها
- قابلیت اجرا در همه پلتفرمها
این کد، مثالی ساده اما کاربردی از استفاده از پایتون برای تعامل با APIها است و میتواند به عنوان اولین قدم برای یادگیری کار با شبکه و APIها در پایتون باشد.
import urllib.request
def get_public_ip():
try:
# ارسال درخواست به API برای دریافت آدرس IP عمومی
public_ip = urllib.request.urlopen('https://api.ipify.org').read().decode('utf8')
print(f'آدرس IP عمومی شما: {public_ip}')
except Exception as e:
# در صورت بروز خطا، پیام خطا را چاپ میکند
print(f'خطایی رخ داده است: {e}')
if __name__ == "__main__":
get_public_ip()