Parsa Html till Android

Diskussion i 'Frågor, support och diskussion' startad av PoulZen, 16 okt 2011.

  1. PoulZen

    PoulZen Infant Droid Medlem

    Blev medlem:
    16 okt 2011
    Inlägg:
    7
    Mottagna gillanden:
    0

    MINA ENHETER

    Jag vill ha hjälp att hämta specifika taggar från en hemsida till en ListView i en android app.
    Är det någon som har en bra parser för att göra detta?

    Har testat HtmlCleaner men får det inte till att fungera.
    Om någon har ett bra exempel på kod så vore det enklast.
     
  2. henkepenka

    henkepenka Youth Droid Medlem

    Blev medlem:
    7 sept 2010
    Inlägg:
    162
    Mottagna gillanden:
    12

    MINA ENHETER

    Ett tips är att sätta upp en egen webtjänst i tex PHP som sköter parsningen. Sedan kan du hämta formaterad data i tex JSON från appen.

    Fördelen med detta är ifall din källa (om det är en källa som du inte kan själv påverka) ändrar i sin HTML-kod så behöver du inte skapa en ny version av appen, utan då räcker det med att du ändrar din webtjänst och användarna behöver inte märka något.

    //Henrik
     
    PoulZen gillar detta.
  3. henca

    henca Senior Droid Medlem

    Blev medlem:
    30 dec 2009
    Inlägg:
    1 313
    Mottagna gillanden:
    192

    MINA ENHETER

  4. Zooklubba

    Zooklubba Android Medlem

    Blev medlem:
    10 jul 2010
    Inlägg:
    6 394
    Mottagna gillanden:
    2 134

    MINA ENHETER

    Nu var det något år sedan jag använde htmlcleaner men då tyckte jag inte det var några bekymmer alls utan det gick väldigt lätt, ganska trögt men ändå lätt att parsa sidor.

    Ta en titt på exempelvis: Using XPATH and HTML Cleaner to parse HTML / XML « Think Android

    Koden jag har är inte dokumenterad och eftersom det handlar om htmlparsing skräddarsydd för specifika sidor så om du inte kommer med sidexempel är det svårt att ge dig simpla exempel.

    Edit:
    Lite fler exempel för htmlcleaner.
    http://stackoverflow.com/questions/5867746/android-html-parser-example
    http://chasethedevil.blogspot.com/2006/05/java-html-parsing-example-with.html
     
  5. PoulZen

    PoulZen Infant Droid Medlem

    Blev medlem:
    16 okt 2011
    Inlägg:
    7
    Mottagna gillanden:
    0

    MINA ENHETER

    Jag har inte jobbat I php innan, men kan man sätta upp en server och så offline, eller måste man skaffa webbhotell och så vidare först?
    Och hur funkar det, skriver man kod I en .php fil först och sen lägger upp på en server och så skapar den en html sida som jag ska hämta infon till appen Ifrån istället?

    Sidan jag vill parsa är Blocket, vad jag förstått så är den inte så välformaterad.
     
  6. Zooklubba

    Zooklubba Android Medlem

    Blev medlem:
    10 jul 2010
    Inlägg:
    6 394
    Mottagna gillanden:
    2 134

    MINA ENHETER

    Fungerar inte deras API? Blockets utvecklarprogram
     
  7. henca

    henca Senior Droid Medlem

    Blev medlem:
    30 dec 2009
    Inlägg:
    1 313
    Mottagna gillanden:
    192

    MINA ENHETER

    Du kan experimentera med php hemma i ditt eget nätverk eller rentav bara på din egen dator utan tillgång till webhotell.

    Php är ett generellt scriptspråk, i unix-miljö kan du t ex skapa en fil med följande innehåll:

    HTML:
    #!/usr/bin/php
    <?php
    
    echo "hello world!";
    
    ?>
    Sedan kan du efter att ha gjort filen körbar exekvera filen med:

    ./test.php

    ...om du döpt filen till test.php.

    Sedan finns det i flera webservrar stöd för att exekvera php på servern och då brukar man skriva php-script som matar ut html-kod till web-sidor. Det är dock fullt möjligt att även skriva php-script till web-servrar som matar ut någonting annat, t ex en .png-bild eller en .kml-fil. För ett par dagar sedan lattjade jag lite med kml i php:

    http://poolhem.se/phpoi_test/phpoi/www/kml.php - Google Maps

    Men det vanligaste är nog ändå att php-script körs på webservrar och genererar html-kod. För att experimentera med php är det därför bäst att på en dator hemma i det egna nätverket konfigurera upp en webserver med stöd för php. Det kan vara en fördel om denna webserver konfigureras så likt som möjligt en server på något webhotell som man senare kan tänka sig använda. Om du t ex kommer hyra in dig på ett webhotell som kör Linux, Apache och PHP version 5.3 så kan det vara bra om även din testmiljö har samma specifikation. Olika versioner och till och med olika konfigurationer av samma version av php kan ha stora skillnader i funktionalitet.

    m v h Henrik
     
  8. nilaz

    nilaz Baby Droid Medlem

    Blev medlem:
    16 okt 2010
    Inlägg:
    27
    Mottagna gillanden:
    0

    MINA ENHETER

    Jag har använt Jericho HTML parser när jag tolkat html i Java. Jag har dock inte använt den i en app utan gjort som de andra ovan beskrivit via en server.

    /Niklas
     
  9. Shebsa

    Shebsa Kid Droid Medlem

    Blev medlem:
    12 nov 2010
    Inlägg:
    34
    Mottagna gillanden:
    4

    MINA ENHETER

    Finns en webbserver för Windows som heter WAMPServer (Windows, Apache, MySQL, PHP) som du kan ladda ner gratis och installera på din dator som du kan dela med ditt nätverk eller via internet, eller bara lokalt om du vill det. Du laddar ner det på Install PHP 5 Apache MySQL on Windows : WampServer.
    Efter att du har installerat det går du bara in i mappen "www" som ligger i installationsmappen och skapar en ny mapp som du döper till vad du vill och i den här mappen kan du nu skapa php-filer.
    Starta sen WAMPServer och gå in på http://localhost/dinmapp/dinphpfil.php och så ska det fungera :)