如何使用jsoup获取网页上的所有链接?

问题描述

我正在尝试使用jsoup获取网页上的所有链接,并在textview中显示返回的链接。但是当我运行代码时,输​​出看起来像这样

<a class="Fx4vihref="ttps://google.com/search/howsearchworks/?fg=1"> How search works </a>

这只是一个链接,不是页面上的所有链接。这是我期望的输出-

  https://play.google.com/?hl=en&tab=w8
  https://www.google.com/calendar?tab=wc       
  https://photos.google.com/?tab=wq&pageId=none
  https://drive.google.com/?tab=wo

我在做什么错了?

代码

   @SuppressLint("NewApi")
protected Elements doInBackground(String... urls) {

    String url = urls[0];
    Document doc;
    Elements links = null;

    try {
        //view.setText("this will be displayed in textview ");

        doc = Jsoup.connect(url).get();
        //view.setText("this wont be displayed in textview..i get unfortunately app stopped");
        links = doc.select("a[href]");


    } catch (IOException e) {
        // Todo Auto-generated catch block
        e.printstacktrace();
    }
    return links;
}

protected void onPostExecute(Elements result) {
    print("\nLinks: (%d)",result.size());

    for (Element link : result) {
        //view.setText((CharSequence) link);
        view.setText(link.toString());
        print(" * a: <%s>  (%s)",link.attr("abs:href"),trim(link.text(),35));
    }
}

private static void print(String msg,Object... args) {
    System.out.println(String.format(msg,args));
}

private static String trim(String s,int width) {
    if (s.length() > width)
        return s.substring(0,width - 1) + ".";
    else
        return s;
}

}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)