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

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

استفاده از 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 را ندهند.

هم چنین مطالعه کنید:   ویژگی های آخرین نسخه پایتون 3.12.1

یک نمونه کد ساده با استفاده از 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 را غیرفعال کرده‌اند، بنابراین این روش نیز ممکن است همیشه قابل اعتماد نباشد.

برای امتیاز به این نوشته روی ستاره ها کلیک کنید!
[کل: 0 میانگین: 0]
برای عضویت در خبرنامه ما و دریافت جدیدترین مقالات جذاب، ایمیل خود را وارد نمایید.

Responses

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Responses

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

List Comprehensions در پایتون

List Comprehensions در پایتون

List Comprehensions در پایتون، یک روش سریع و موثر برای ایجاد لیست‌ها از طریق اعمال عملیات و فیلترها بر روی تکرارپذیرها (iterables) است. این ویژگی

تشخیص شماره موبایل با پایتون

تشخیص شماره موبایل در متن با پایتون

برای تشخیص شماره‌های تلفن همراه ایرانی، می‌توان از یک تابع پایتون استفاده کرد که از عبارت‌های باقاعده (Regular Expressions) برای شناسایی الگوی شماره‌های تلفن همراه