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-এর টাইটেল এবং সব লিংক দেখাবে।