استفاده از 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)
این کد را میتوانید در محیط پایتون خود اجرا کنید. تنها کافی است 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 را غیرفعال کردهاند، بنابراین این روش نیز ممکن است همیشه قابل اعتماد نباشد.
Responses