Как разобрать html-контент в xml, используя tagoup в android - PullRequest
6 голосов
/ 13 сентября 2011

Может кто-нибудь сказать мне, как анализировать содержимое HTML как XML с помощью TagSoup в Android?Я ищу примеры функционального кода, если это возможно.

Ответы [ 2 ]

6 голосов
/ 20 сентября 2011
XMLReader xmlReader = XMLReaderFactory.createXMLReader ("org.ccil.cowan.tagsoup.Parser");
ContentHandler handler = new DefaultHandler () {
  public void startElement (String uri, String localName, String qName, Attributes attributes) throws SAXException
  {
    // ...
  }
};
xmlReader.setContentHandler (handler);
xmlReader.parse (new InputSource (input));
3 голосов
/ 08 сентября 2012

Ниже приведен код, который должен предоставить вам средство анализа веб-страницы с помощью Document, созданного TagSoup.

    HttpClient client = new DefaultHttpClient();
    HttpGet request = new HttpGet("http://streak.espn.go.com/en/?date=20120824");
    HttpResponse response = client.execute(request);

    // Check if server response is valid
    StatusLine status = response.getStatusLine();
    if (status.getStatusCode() != 200) {
        throw new IOException("Invalid response from server: " + status.toString());
    }

    // Pull content stream from response
    HttpEntity entity = response.getEntity();
    InputStream inputStream = entity.getContent();

    try
    {
        XMLReader parser = XMLReaderFactory.createXMLReader("org.ccil.cowan.tagsoup.Parser");

        // Use the TagSoup parser to build an XOM document from HTML
        Document doc = new Builder(parser).build(builder.toString());

        // Parse the document as needed
        Node node = doc.query("...");
    }
    catch(IOException e)
    { ... }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...