парсинг конкретных данных с сайта в Android [закрыт]

я новичок в Android, а также java.i хочу отображать конкретные данные с веб-сайта в моем приложении для Android в виде списка, а затем сохранить эти данные в базу данных sqlite. Кто-нибудь может сказать мне, как получить нужные данные с веб-сайта?

на самом деле я хочу знать с самого начала. потому что я не понимаю, как начать.plz помочь мне. Мне нужна помощь по следующим вопросам 1. как открыть проект для разбора данных? 2. какой будет построенная цель? 3. как использовать jsoup или любой другой процесс в проекте?

Я совершенно новый здесь. Так что, пожалуйста, помогите мне. заранее спасибо...

 Sam14 июн. 2012 г., 07:06
Не могли бы вы быть более конкретным, хотите ли вы скопировать текст, ссылки, изображения? А что ты пробовал?

Ответы на вопрос(2)

виде строки JSON или XML, оба имеют разные способы анализа

для разбора XML мы можем использовать SAX-парсер ИЛИ DOM-парсер

чтобы узнать больше о SAX-парсере, перейдите по этой ссылке:попробуй это!!!

Ну вотhttp://jsoup.org/cookbook/

JSoup удивителен и очень эффективен, хороший пример вы найдете в приведенной выше ссылке.

First, You have to connect to the webpage you want to parse using:

Document doc = Jsoup.connect("http://example.com/").get(); 

Make sure you execute above code in non-ui thread using Asynctask or handlers.

Затем вы можете выбрать элементы страницы, используяСинтаксис селектора JSoup.

Например, скажем, вы хотите выбрать все содержимоеdiv теги сid атрибут установлен вtest, вы просто должны использовать:

Elements divs = doc.select("div#test");

чтобы получить div, затем вы можете перебрать их, используя:

for (Element div : divs)
    System.out.println(div.text());
}

Below is Example Snippet.

package org.jsoup.examples;

import org.jsoup.Jsoup;
import org.jsoup.helper.Validate;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import java.io.IOException;

/**
 * Example program to list links from a URL.
 */
public class ListLinks {
    public static void main(String[] args) throws IOException {
        Validate.isTrue(args.length == 1, "usage: supply url to fetch");
        String url = args[0];
        print("Fetching %s...", url);

        Document doc = Jsoup.connect(url).get();
        Elements links = doc.select("a[href]");
        Elements media = doc.select("[src]");
        Elements imports = doc.select("link[href]");

        print("\nMedia: (%d)", media.size());
        for (Element src : media) {
            if (src.tagName().equals("img"))
                print(" * %s: <%s> %sx%s (%s)",
                        src.tagName(), src.attr("abs:src"), src.attr("width"), src.attr("height"),
                        trim(src.attr("alt"), 20));
            else
                print(" * %s: <%s>", src.tagName(), src.attr("abs:src"));
        }

        print("\nImports: (%d)", imports.size());
        for (Element link : imports) {
            print(" * %s <%s> (%s)", link.tagName(),link.attr("abs:href"), link.attr("rel"));
        }

        print("\nLinks: (%d)", links.size());
        for (Element link : links) {
            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;
    }
}

Последний, но не список.

If you ever do Asynchronous operation then perform it in Non-UI Thread.

Ваш ответ на вопрос