Einzelne Elemente einer Webseite abgreifen

isaak

isaak

Erfahrenes Mitglied
31
Hi,
ich versuche mich gerade in die App-Programmierung einzuarbeiten. Ein paar Standard-Beispiele habe ich schon durchexerziert. Nun will ich aber versuchen von einer Webseite nur bestimmte Elemente abzugreifen. Also am Beispiel eines Blogs: Nur die eigentlichen Blog-Inhalte, ohne Seitenelemente etc.

Ich versuche es gerade per Webview, komme aber nicht weiter. Ist es überhaupt möglich mit der Webview nur bestimmte Bereiche in die App aufzunehmen?

Falls das noch zu unklar ist: Ich nehme irgendeine Webseite, schaue in den HTML-Code per Firebug und sehe, dass das Element, das ich abgreifen will per "<div="content">" im Body eingefügt wurde. Jetzt will ich genau diesen Teil haben und alles andere ausblenden, also keine Sidebar etc.

Wenn jemand einen Tipp hätte, wäre ich sehr dankbar, denn ich komme einfach nicht weiter. Ich weiß nichteinmal, ob meine bisherige Vorgehensweise per Webview überhaupt richtig ist.
 
naja kommt nun drauf an, was de genau vor hast... es gibt mehrere ansatzpunkte, aber wenn du daten von ner website haben willst, kannst du einfach nen eigenen request senden und den response auswerten... ist nicht sonderlich schwer... das ganze solltest du natürlich in nen thread auslagern, sosnt steht deine app ;) nennt sich auch crawln bzw. parsen... gibts genug anleitungen für java also google is dein freund =)
 
  • Danke
Reaktionen: isaak
danke für deine Antwort, mal schauen, ob mir Google mit den Infos etwas genaueres ausspuckt.

Ich habe bisher noch nichts in diese Richtung gemacht, daher fällt es mir auch schwer, was passendes zu finden. Google ist leider nicht so intelligent und sucht was ich meine, sondern nur das, was ich eingebe. :D und gerade das ist wiederum schwer, wenn man nicht weiß, wonach man suchen soll.

naja kommt nun drauf an, was de genau vor hast
eigentlich nur, dass mir die App eine Webseite so anzeigt, wie ich sie gerne hätte und nicht so, wie der Homepage-Entwickler es vorgesehen hat. Also z.B. von einem Blog nur die Posts zu zeigen, ohne Sidebar, Footer etc. Fast so wie eine Listenansicht von RSS-Feeds - nur ohne RSS eben. :rolleyes:

Naja, ich suche jetzt erstmal nach den von dir genannten Stichwörtern.

Grüße
Isaak
 
  • Danke
Reaktionen: isaak
Danke, sieht beim ersten Überfliegen vielversprechend aus. Werde es mir mal genauer ansehen.

Grüße
Isaak
 
Für das Extrahieren der Inhalte bieten sich Regular Expressions an.
Etwa so:

Code:
Pattern pat = Pattern.compile(
    "<div[^>]*>([^<]+)</div>",
    java.util.regex.Pattern.CASE_INSENSITIVE
);
Matcher mat = pat.matcher(page);
while (mat.find(index)) {
   String txt1 = mat.group(1);
   index = mat.end();
}
 

Ähnliche Themen

D
  • Data2006
Antworten
14
Aufrufe
483
jogimuc
J
S
Antworten
0
Aufrufe
754
Soni
S
L
Antworten
4
Aufrufe
1.329
lonnie9020
L
Zurück
Oben Unten