首页 > 解决方案 > 从android studio中的网站提取文本

问题描述

我有一个网站,它只显示一行文本,我需要在 android studio 中提取文本表单,我更愿意将其作为字符串获取。我该怎么做呢?

诸如此类的东西webView.getTitle()会起作用,但对于网站的内容来说,有没有这样一种快速的方法来获得这个或者我应该怎么做?

具体信息

我需要获取信息表的网站是:

 "<html> <head></head> <body> #4d636f </body> </html> "

从这里我只需要正文中的文本,在这种情况下,颜色作为文本。

标签: androidandroid-studioweb

解决方案


您可以使用任何 Web Scraper/Crawler API 从网站获取数据。

例如: 适用于 Java 和 Android 的 JSOUP API

更新

解决上述问题的分步指南

  1. 将 Jsoup 依赖添加到 build.gradle 的应用级别。

实施 'org.jsoup:jsoup:1.11.1'

  1. 将 Internet 权限添加到 Android Manifest 文件以访问 Internet。

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

  1. 在您的应用程序中添加按钮和文本视图,以便在单击按钮时从网站获取数据并在文本视图上显示结果。

下面是示例代码:

public class MainActivity extends AppCompatActivity {

    private TextView result;
    private Button fetch;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        result = (TextView) findViewById(R.id.result);
        fetch = (Button) findViewById(R.id.fetch);
        fetch.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                getBodyText();
            }
        });
    }
    private void getBodyText() {
        new Thread(new Runnable() {
            @Override
            public void run() {
                final StringBuilder builder = new StringBuilder();

                try {
                    String url="http://www.example.com";//your website url
                    Document doc = Jsoup.connect(url).get();

                    Element body = doc.body();
                    builder.append(body.text());

                } catch (Exception e) {
                    builder.append("Error : ").append(e.getMessage()).append("\n");
                }

                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        result.setText(builder.toString());
                    }
                });
            }
        }).start();
    }

}

推荐阅读