কম্পিউটার টিউটোরিয়াল

পাইথনে ওয়েব স্ক্র্যাপিং ও অ্যালফাবেটিক্যালি অর্ডার্ড শব্দ খোঁজা


উদ্দেশ্য

একটি URL থেকে টেক্সট স্ক্র্যাপ করে, যেসব শব্দের অক্ষরগুলো অ্যালফাবেটিক্যালি সাজানো (যেমন: "almost", "biopsy") সেগুলো বের করা।

প্রয়োজনীয় লাইব্রেরি

pip install requests

সম্পূর্ণ কোড


import requests

def fetch_words(url):
    """URL থেকে শব্দের লিস্ট আনা"""
    response = requests.get(url)
    response.raise_for_status()
    # UTF-8 ডিকোড করে শব্দে ভাগ
    return response.content.decode('utf-8').split()

def is_ordered(word):
    """শব্দের অক্ষরগুলো অ্যাসেন্ডিং অর্ডারে আছে কিনা চেক"""
    if len(word) < 3:
        return False
    return all(ord(word[i]) <= ord(word[i+1]) for i in range(len(word)-1))

def find_ordered_words():
    url = "https://example.com/wordlist.txt"  # আপনার URL দিন
    words = fetch_words(url)
    
    # হেডার/ফুটার বাদ দিতে প্রথম ১৬টি স্কিপ (উদাহরণ অনুযায়ী)
    words = words[16:]
    
    ordered = [w for w in words if is_ordered(w.lower())]
    for w in ordered:
        print(f"{w}: ordered")

if __name__ == '__main__':
    find_ordered_words()

কোড ব্যাখ্যা

  • requests.get() — HTTP GET রিকোয়েস্ট।
  • .content.decode('utf-8') — বাইটকে স্ট্রিংতে কনভার্ট।
  • .split() — হোয়াইটস্পেস দিয়ে শব্দে ভাগ।
  • ord(char) — ক্যারেক্টারের ASCII/ইউনিকোড ভ্যালু।
  • all(...) — সব জোড়া অক্ষর অর্ডারড কিনা চেক।

উন্নত সংস্করণ (লাইব্রেরি বাদ দিয়ে)


def is_ordered_simple(word):
    return list(word.lower()) == sorted(word.lower())

# টেস্ট
print(is_ordered_simple("almost"))   # True
print(is_ordered_simple("biopsy"))   # True
print(is_ordered_simple("hello"))    # False
  1. পাইথন Tkinter ব্যবহার করে শব্দের ডিকশনারি অ্যাপ তৈরি করা

  2. পাইথনে প্যারাবোলার শীর্ষ, ফোকাস এবং ডাইরেকট্রিক্স খুঁজে বের করার প্রোগ্রাম

  3. পাইথন এবং Scrapy দিয়ে ওয়েব স্ক্রেপিং

  4. Python Dictionary ও List একসাথে জিপ (zip) করা