پایتون

چک کردن فعال بودن سایت با پایتون

چک کردن فعال بودن سایت با پایتون
💡نکته کلیدی و خلاصه این مقاله:

استفاده از requests برای چک کردن فعال بودن یک دامنه و وب‌سایت، می‌توان از کتابخانه‌های استاندارد پایتون مانند requests استفاده کرد. در این کد، یک تابع تعریف می‌کنم که URL یک وب‌سایت را دریافت می‌کند و وضعیت...

استفاده از requests

برای چک کردن فعال بودن یک دامنه و وب‌سایت، می‌توان از کتابخانه‌های استاندارد پایتون مانند requests استفاده کرد. در این کد، یک تابع تعریف می‌کنم که URL یک وب‌سایت را دریافت می‌کند و وضعیت فعال بودن آن را بررسی می‌کند. اگر درخواست به وب‌سایت با موفقیت انجام شود و پاسخی دریافت کنیم، به این معنی است که سایت فعال است. در غیر این صورت، سایت فعال نیست یا مشکلی دارد. کد زیر این کار را انجام می‌دهد:
import requests

def check_website_status(url):
    try:
        response = requests.get(url)
        if response.status_code == 200:
            return "وب‌سایت فعال است."
        else:
            return "وب‌سایت فعال نیست، وضعیت: " + str(response.status_code)
    except requests.exceptions.RequestException as e:
        return "خطا هنگام برقراری ارتباط با وب‌سایت: " + str(e)

# مثال استفاده
url = "http://example.com"
status = check_website_status(url)
print(status)
  این کد را می‌توانید در محیط پایتون خود اجرا کنید. برای مستندات کامل کتابخانه requests، مستندات رسمی requests را ببینید. تنها کافی است URL وب‌سایت مورد نظر خود را جایگزین http://example.com کنید.

استفاده از ping

یک راه دیگر برای چک کردن وضعیت یک وب‌سایت استفاده از ping است. ping یک ابزار خط فرمان است که برای ارسال بسته‌های ICMP (Internet Control Message Protocol) به هاست مقصد و دریافت پاسخ از آن استفاده می‌شود. این روش می‌تواند به شما نشان دهد که آیا یک سرور به طور کلی در دسترس است، اما نمی‌تواند وضعیت HTTP/HTTPS یک وب‌سایت خاص را تایید کند. برای استفاده از ping در پایتون، می‌توانید از کتابخانه os یا subprocess استفاده کنید تا دستور ping را اجرا کنید. البته، این روش ممکن است در بسترهای مختلف (مانند ویندوز، لینوکس، و مک) متفاوت باشد و برخی از محیط‌های میزبانی وب اجازه اجرای ping را ندهند. یک نمونه کد ساده با استفاده از subprocess برای اجرای ping به شرح زیر است:
import subprocess

def is_website_up(url):
    try:
        # برای ویندوز
        response = subprocess.run(["ping", "-n", "1", url], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        # برای لینوکس یا مک
        # response = subprocess.run(["ping", "-c", "1", url], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        return response.returncode == 0
    except Exception as e:
        print(f"Error: {e}")
        return False

# نمونه استفاده
url = "google.com" # بدون 'http://' یا 'https://'
print(is_website_up(url))
این کد چک می‌کند که آیا می‌توان به سرور موردنظر ping زد یا خیر. با این حال، باید توجه داشته باشید که برخی از سرورها به طور خاص پاسخ به درخواست‌های ping را غیرفعال کرده‌اند، بنابراین این روش نیز ممکن است همیشه قابل اعتماد نباشد.

مطالب مرتبط:

همیار وب

تیم تحریریه همیار وب

مرجع تخصصی ابزارها، قالب‌ها و آموزش‌های عملی توسعه کسب‌وکار آنلاین مبتنی بر هوش مصنوعی و اتوماسیون.