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

এন্ড্রয়েডে কোটলিন ব্যবহার করে HTML পার্স করার পদ্ধতি

Jsoup লাইব্রেরি ব্যবহার করে HTML পার্সিং

এই উদাহরণটি দেখায় কিভাবে কোটলিন ব্যবহার করে এন্ড্রয়েডে Jsoup লাইব্রেরি দিয়ে HTML ডকুমেন্ট পার্স করা যায় এবং লিংক ও টেক্সট বের করা যায়।

ধাপ ১: নতুন প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project এ যান এবং প্রজেক্ট তৈরি করুন।

ধাপ ২: লেআউট XML ফাইল কনফিগার করুন

res/layout/activity_main.xml ফাইলে নিচের কোড যোগ করুন:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="8dp"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/btnParseHTML"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="30dp"
        android:text="ওয়েবসাইট পান" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/btnParseHTML"
        android:layout_centerHorizontal="true"
        android:text="ফলাফল"
        android:textColor="@android:color/background_dark"
        android:textSize="12sp"
        android:textStyle="bold" />

</RelativeLayout>

ধাপ ৩: build.gradle-এ Jsoup নির্ভরতা যোগ করুন

implementation 'org.jsoup:jsoup:1.11.2'

ধাপ ৪: MainActivity.kt ফাইলে লজিক লিখুন

import android.os.Bundle
import android.widget.Button
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
import org.jsoup.select.Elements
import java.io.IOException

class MainActivity : AppCompatActivity() {
    lateinit var button: Button
    lateinit var textView: TextView

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        title = "KotlinApp"

        textView = findViewById(R.id.textView)
        button = findViewById(R.id.btnParseHTML)

        button.setOnClickListener {
            getHtmlFromWeb()
        }
    }

    private fun getHtmlFromWeb() {
        Thread(Runnable {
            val stringBuilder = StringBuilder()
            try {
                val doc: Document = Jsoup.connect("https://www.tutorialspoint.com/").get()
                val title: String = doc.title()
                val links: Elements = doc.select("a[href]")
                stringBuilder.append(title).append("\n")
                for (link in links) {
                    stringBuilder.append("\n").append("Link: ").append(link.attr("href")).append("\n").append("Text: ").append(link.text())
                }
            } catch (e: IOException) {
                stringBuilder.append("Error: ").append(e.message).append("\n")
            }
            runOnUiThread { textView.text = stringBuilder.toString() }
        }).start()
    }
}

ধাপ ৫: AndroidManifest.xml-এ ইন্টারনেট পারমিশন যোগ করুন

<uses-permission android:name="android.permission.INTERNET"/>

অ্যাপ্লিকেশন চালানোর পদ্ধতি

ডিভাইস সংযুক্ত করে Run করুন। "ওয়েবসাইট পান" বাটনে ক্লিক করলে Tutorialspoint-এর টাইটেল এবং সব লিংক দেখাবে।

  1. অ্যান্ড্রয়েডে StringWriter.append() ব্যবহার

  2. অ্যান্ড্রয়েড অ্যাপ থেকে HTML ইমেইল পাঠানোর পদ্ধতি

  3. অ্যান্ড্রয়েডে HTML পার্স করার পদ্ধতি (Jsoup লাইব্রেরি ব্যবহার করে)

  4. অ্যান্ড্রয়েডে কোটলিন ব্যবহার করে GridView স্ক্রোলিং নিষ্ক্রিয় করার উপায়