Skip to main content

HTML matn-parsing kutubxonasi - URL yoki lokal fayldan matnlarni tozalash va ajratib olish

Project description

DATALOGUZ

HTML matn-parsing kutubxonasi - Python uchun sodda va tez HTML matn ajratib olish kutubxonasi.

Muallif: YOQUBOV JAVOHIR

Asosiy imkoniyatlar

  • ✅ URL yoki lokal HTML fayldan matn ajratib olish
  • ✅ HTML teglarni olib tashlash
  • ✅ Meta-ma'lumotlar (title, description, keywords) olish
  • ✅ Ko'rinadigan matnlarni tozalash
  • ✅ Sodda va minimal
  • ✅ UTF-8 kodirovani qo'llab-quvvatlash

O'rnatish

pip install dataloguz

Foydalanish

Asosiy foydalanish

import dataloguz

# HTML matnini parsing qilish
result = dataloguz.parse_html("<html><body><h1>Salom dunyo!</h1></body></html>")
print(result['text'])  # "Salom dunyo!"
print(result['title'])  # ""

URL dan ma'lumot olish

import dataloguz

# Web sahifadan ma'lumot olish
result = dataloguz.parse_url("https://example.com")
print(result['title'])
print(result['meta_description'])
print(result['text'][:200] + "...")

Fayldan ma'lumot olish

import dataloguz

# Fayldan HTML o'qish
result = dataloguz.parse_file("page.html")
print(result['title'])
print(result['text'])

Natijalar

Barcha funksiyalar quyidagi strukturali ma'lumotlarni qaytaradi:

{
    'title': 'Sahifa sarlavhasi',
    'meta_description': 'Meta description matni',
    'meta_keywords': 'keywords,matni',
    'meta_author': 'Muallif nomi',
    'source_url': 'Manba URL',
    'word_count': 42,  # So'zlar soni
    'text': 'Tozalangan matn',
    'raw_text': 'Xom matn'
}

Minimal funksiyalar

Faqat matn olish uchun:

from dataloguz.parser import extract_text_only, clean_html_tags

# Faqat matnni olish
text = extract_text_only("<html><body><h1>Test</h1></body></html>")
print(text)  # "Test"

# HTML teglarni tozalash
cleaned = clean_html_tags("<p>Bu <b>qalin</b> matn</p>")
print(cleaned)  # "Bu qalin matn"

Ma'lumot

parse_html(html_content, source_url=None)

Asosiy parsing funksiyasi.

Parametrlar:

  • html_content (str): HTML matn yoki URL
  • source_url (str, optional): Manba URL (metadata uchun)

Qaytaradi: dict natijalar

parse_file(file_path, encoding='utf-8')

Fayldan HTML o'qib parsing qilish.

Parametrlar:

  • file_path (str): Fayl yo'li
  • encoding (str): Fayl kodirovasi (default: 'utf-8')

parse_url(url)

URL dan HTML o'qib parsing qilish.

Parametrlar:

  • url (str): Web sahifa URL i

Xususiyatlari

  • Ko'rinadigan matn: Faqat foydalanuvchi ko'ra oladigan matnlarni qaytaradi
  • Meta ma'lumotlar: SEO uchun muhim meta ma'lumotlarni ajratib oladi
  • Tozalash: Ortiqcha bo'shliqlar va qatorlarni olib tashlaydi
  • Kodirovani qo'llab-quvvatlash: UTF-8 va boshqa kodirovanilarni qo'llab-quvvatlaydi

Misollar

Blog post ma'lumotlarini olish

import dataloguz

def get_blog_info(url):
    result = dataloguz.parse_url(url)
    return {
        'title': result['title'],
        'description': result['meta_description'],
        'content': result['text'],
        'word_count': result['word_count']
    }

blog_info = get_blog_info("https://example.com/blog-post")
print(blog_info)

Ko'p sahifalarni birgalikda qayta ishlash

import dataloguz

urls = [
    "https://site.com/page1",
    "https://site.com/page2", 
    "https://site.com/page3"
]

for url in urls:
    result = dataloguz.parse_url(url)
    print(f"Sahifa: {result['title']}")
    print(f"So'zlar soni: {result['word_count']}")
    print("-" * 50)

Litsenziya

MIT License - batafsil ma'lumot uchun LICENSE faylini ko'ring.

Muallif

YOQUBOV JAVOHIR

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dataloguz-1.0.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dataloguz-1.0.0-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file dataloguz-1.0.0.tar.gz.

File metadata

  • Download URL: dataloguz-1.0.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for dataloguz-1.0.0.tar.gz
Algorithm Hash digest
SHA256 c734c1349ae427aa2b50da503e766777e6aa55141a5f72b742387bea94d6f1bc
MD5 8606c98ea30ca80bb2e9b7957543bffd
BLAKE2b-256 bbd06af0884435a5e0cbb9ea50a3e110e19065db3207b7b5b20be5d64582575d

See more details on using hashes here.

File details

Details for the file dataloguz-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dataloguz-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for dataloguz-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1669030e240af53d15eb8300acdb2f27d25610eb66b23ff78a158b1d74204769
MD5 680bb5dd448e8dc9618502b6ca7d02f4
BLAKE2b-256 58382943e35e303186f3c0b11eae3e38abe4fcc5e7509684da27a5f9120fbae9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page