要解析网页内容,你可以使用Jsoup库来处理HTML文档。以下是一个使用Jsoup解析网页内容的示例代码:
首先,确保你的Android项目中已经添加了Jsoup库的依赖。可以在build.gradle文件中添加以下依赖项:
implementation 'org.jsoup:jsoup:1.14.3'
然后,在你的代码中,你可以使用以下代码来解析网页内容:
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 在后台线程中执行网络请求和解析
new Thread(new Runnable() {
@Override
public void run() {
try {
// 从URL加载HTML文档
String url = "https://example.com";
Document doc = Jsoup.connect(url).get();
// 解析HTML文档中的标题
String title = doc.title();
Log.d("MainActivity", "标题: " + title);
// 解析HTML文档中的所有链接
Elements links = doc.select("a[href]");
for (Element link : links) {
String linkText = link.text();
String linkUrl = link.attr("href");
Log.d("MainActivity", "链接文本: " + linkText);
Log.d("MainActivity", "链接URL: " + linkUrl);
}
// 解析HTML文档中的所有图片
Elements images = doc.select("img[src]");
for (Element image : images) {
String imageUrl = image.attr("src");
Log.d("MainActivity", "图片URL: " + imageUrl);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}).start();
}
}
这个示例代码会在后台线程中执行网络请求和解析。它首先从指定的URL加载HTML文档,然后解析文档中的标题、链接和图片,并使用Log输出结果。
请注意,由于网络请求和解析是在后台线程中执行的,你可能需要适当的方法来在UI线程中更新界面。