Python yordamida Veb-sayt Texnologiyalarini Aniqlash

Veb-sayt texnologiyalarini aniqlash veb-saytning qanday texnologiyalarda ishlatilganini bilib olish uchun zarur. Ushbu qo‘llanma orqali siz veb-sayt serveri, CMS tizimi, frontend kutubxonalari va boshqa texnologiyalarni avtomatik ravishda aniqlashingiz mumkin. Buning uchun requests va wappalyzer kutubxonalaridan foydalanamiz.

1 Zarur Kutubxonalarni O‘rnatish

Veb-sayt texnologiyalarini tahlil qilish uchun biz wappalyzer kutubxonasidan foydalanamiz. Bu kutubxona ma’lum bir veb-saytning texnologiyalarini aniqlash uchun keng qo‘llaniladi.

Quyidagi buyruqlar orqali zarur kutubxonalarni o‘rnating:

pip install requests Wappalyzer-python

Eslatma: wappalyzer – bu open-source loyiha bo‘lib, u veb-sayt texnologiyalarini aniqlash uchun ishlatiladi.

Loyihada Texnologiyalarni Aniqlash Kodu

Quyidagi kod veb-saytga HTTP so‘rov yuboradi, texnologiyalarni tahlil qiladi va ularning asosiy qismlarini ajratib beradi. Kodning har bir qismi tushuntirilgan.

To‘liq Kod

import requests
from Wappalyzer import Wappalyzer, WebPage

def fetch_webpage(url):
    """
    URL manzilidan sahifa HTML tarkibini yuklab olish funksiyasi.
    """
    try:
        response = requests.get(url)
        response.raise_for_status()
        return response.text
    except requests.RequestException as e:
        print(f"Sahifani yuklashda xatolik yuz berdi: {e}")
        return None

def detect_technologies(url):
    """
    Veb-sayt texnologiyalarini aniqlash funksiyasi.
    """
    wappalyzer = Wappalyzer.latest()
    webpage = WebPage.new_from_url(url)
    
    try:
        technologies = wappalyzer.analyze(webpage)
        print(f"\nURL: {url}")
        print("Aniqlangan texnologiyalar:")
        for tech in technologies:
            print(f"- {tech}")
    except Exception as e:
        print(f"Texnologiyalarni aniqlashda xatolik yuz berdi: {e}")

# Sinov uchun URL manzil
test_url = "https://example.com"
detect_technologies(test_url)

Kodning Barcha Qismlari Tushuntirishi

Kodni to‘liq tushunish uchun har bir funksiyaning vazifasini batafsil ko‘rib chiqamiz.

1 fetch_webpage Funksiyasi

Bu funksiya berilgan URL manzilidan sahifaning HTML tarkibini yuklab olish uchun ishlatiladi. Bu sahifadagi texnologiyalarni tahlil qilish uchun kerak.

import requests

def fetch_webpage(url):
    """
    URL manzilidan sahifa HTML tarkibini yuklab olish funksiyasi.
    """
    try:
        response = requests.get(url)
        response.raise_for_status()
        return response.text
    except requests.RequestException as e:
        print(f"Sahifani yuklashda xatolik yuz berdi: {e}")
        return None
  • requests.get(url) – Berilgan URL manzilga HTTP so‘rov yuborib, sahifa tarkibini yuklaydi.

  • response.raise_for_status() – Agar so‘rovda xatolik yuz bersa, xatolik haqida xabar chiqaradi.

  • response.text – Sahifa HTML tarkibini qaytaradi.

Sinov:

html = fetch_webpage("https://example.com")

2. detect_technologies Funksiyasi

Ushbu funksiya Wappalyzer yordamida sahifada ishlatilgan texnologiyalarni aniqlaydi. Wappalyzer sahifa tarkibini o‘rganib, sayt ishlayotgan texnologiyalar haqida ma’lumot beradi.

from Wappalyzer import Wappalyzer, WebPage

def detect_technologies(url):
    """
    Veb-sayt texnologiyalarini aniqlash funksiyasi.
    """
    wappalyzer = Wappalyzer.latest()  # Wappalyzer kutubxonasining oxirgi versiyasini yuklaydi
    webpage = WebPage.new_from_url(url)  # Berilgan URL bo‘yicha veb-sahifa ma’lumotini olish
    
    try:
        technologies = wappalyzer.analyze(webpage)
        print(f"\nURL: {url}")
        print("Aniqlangan texnologiyalar:")
        for tech in technologies:
            print(f"- {tech}")
    except Exception as e:
        print(f"Texnologiyalarni aniqlashda xatolik yuz berdi: {e}")
  • Wappalyzer.latest() – Wappalyzer kutubxonasining eng so‘nggi versiyasini yuklab olish.

  • WebPage.new_from_url(url) – Sahifani berilgan URL dan yuklaydi va tahlil qilish uchun tayyorlaydi.

  • wappalyzer.analyze(webpage)webpage tarkibini o‘rganib, unda ishlatilayotgan texnologiyalarni aniqlaydi va technologies ro‘yxatiga saqlaydi.

Sinov:

detect_technologies("https://example.com")

3. Loyihani Ishga Tushirish

Quyidagi kodni ishga tushirib, sayt texnologiyalarini aniqlang.

# Sinov uchun URL
test_url = "https://example.com"
detect_technologies(test_url)

Last updated