JSOUP - doc无法解析,doc也无法解析为变量

时间:2013-10-06 20:47:51

标签: java android jsoup

我正在尝试实现一个JSOUP查询,但是我收到一条错误,指出“doc无法解析”,“doc无法解析为变量”我知道在使用它之前我需要调用doc我只是不知道该怎么做 - 这是我第一次使用JSOUP构建解析器 - 我确信它非常简单 - 我只需要一个快速指针。

public class MainActivity extends Activity { 

    TextView tv;
    String url = "http://microsoft.com";
String tr;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tv = (TextView) findViewById(R.id.TextView01);
        new MyTask().execute(url);
    }

    private class MyTask extends AsyncTask<String, Void, String> {
        ProgressDialog prog;
        String title = "";

        @Override
        protected void onPreExecute() {
            prog = new ProgressDialog(MainActivity.this);
            prog.setMessage("Loading....");
            prog.show();
        }

        @Override
        protected String doInBackground(String... params) {
             try {
                    doc = Jsoup.connect(params[0]).get();
                    Element tableElement = doc.select(".datagrid").first();

                    Elements tableRows = tableElement.select("tr");
                    for (Element row : tableRows) {
                        Elements cells = row.select("td");
                        if (cells.size() >0) {
                            System.out.println(cells.get(0).text()+"; "+cells.get(1).text()+"; "+cells.get(2).text()+"; "+cells.get(3).text());
                        }
                    }}   catch (IOException e) {
                e.printStackTrace();
            }
            return title;
        }




        @Override
        protected void onPostExecute(String result) {
            super.onPostExecute(result);
            prog.dismiss();
            tv.setText(result);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您正在尝试使用尚未声明的变量。正如你已经完成了

TextView tv;

您必须声明变量doc。

Document doc;

不要忘记导入以下包org.jsoup.nodes.Document