AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Text einer Internetseite in Memo einlesen
Thema durchsuchen
Ansicht
Themen-Optionen

Text einer Internetseite in Memo einlesen

Ein Thema von Rued · begonnen am 21. Mär 2025 · letzter Beitrag vom 23. Mär 2025
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von Rued
Rued

Registriert seit: 14. Mai 2008
Ort: Schleching
105 Beiträge
 
Delphi 12 Athens
 
#1

Text einer Internetseite in Memo einlesen

  Alt 21. Mär 2025, 20:39
In meiner Android-App will ich eine Internetseite parsen, wie ich es in meinen PC-Anwendungen mache.

Leider funktioniert WebBrowser1.OleObject.document.body.innerText nicht.

Wie bekomme ich den Text einer Internetseite, die über JavaScript generiert wurde, in ein Memo-Feld - wenn möglich ohne die WebBrowser-Komponente?
Rüdiger Droste
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.883 Beiträge
 
Delphi 12 Athens
 
#2

AW: Text einer Internetseite in Memo einlesen

  Alt 21. Mär 2025, 21:07
Leider funktioniert WebBrowser1.OleObject.document.body.innerText nicht.
Das funktioniert nur mit dem alten Internet Explorer Control, das es auf anderen Plattformen logischerweise nicht gibt.

Wie bekomme ich den Text einer Internetseite, die über JavaScript generiert wurde, in ein Memo-Feld - wenn möglich ohne die WebBrowser-Komponente?
Du kannst TEdgeBrowser verwenden. Das sollte so ca. gehen:
Delphi-Quellcode:
EdgeBrowser.ExecuteScript('document.documentElement.outerHTML',
  ...
Ohne Browser kann es wegen JavaScript nicht gehen.

Sinnvoller ist aber, wenn du über eine API des Anbieters gehst bzw. diesen danach fragst.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Rued
Rued

Registriert seit: 14. Mai 2008
Ort: Schleching
105 Beiträge
 
Delphi 12 Athens
 
#3

AW: Text einer Internetseite in Memo einlesen

  Alt 21. Mär 2025, 21:22
...
Du kannst TEdgeBrowser verwenden.
...
TEdgeBrowser habe ich in der geräteübergreifenden Entwicklung nicht.
Rüdiger Droste
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.123 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Text einer Internetseite in Memo einlesen

  Alt 21. Mär 2025, 21:34
Moin Rüdiger,

vielleicht kannst Du hiermit Klasse HTMLDocument etwas anfangen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.883 Beiträge
 
Delphi 12 Athens
 
#5

AW: Text einer Internetseite in Memo einlesen

  Alt 21. Mär 2025, 21:45
Einfach herunterladen und parsen funktioniert aber mit JavaScript nicht.

Zum Browser:
Entschuldigung, es ist schon spät. Ich meinte FMX TWebBrowser und EvaluateJavaScript. Das sollte unter Android gehen.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Rued
Rued

Registriert seit: 14. Mai 2008
Ort: Schleching
105 Beiträge
 
Delphi 12 Athens
 
#6

AW: Text einer Internetseite in Memo einlesen

  Alt 21. Mär 2025, 22:13
Weiß nicht, wie es es umsetzbar ist, aber warum kann ich die Seite nicht im TWebBrowser laden, dort "alles markieren" und dann die Zwischenablage ins Memo laden?
Rüdiger Droste
  Mit Zitat antworten Zitat
Benutzerbild von Rued
Rued

Registriert seit: 14. Mai 2008
Ort: Schleching
105 Beiträge
 
Delphi 12 Athens
 
#7

AW: Text einer Internetseite in Memo einlesen

  Alt 22. Mär 2025, 13:29
Moin Rüdiger,

vielleicht kannst Du hiermit Klasse HTMLDocument etwas anfangen.
Da wird der Content aus der Zwischenablage bezogen. Wenn ich den Text der aufgerufenen Website erst einmal in der Zwischenablage habe, dann habe ich schon gewonnen. Denn dann habe ich ihn auch im Memo-Feld, in dem ich den Text durchsuchen kann. Mit irgendwelchen Tags habe ich dann nichts am Hut.

Daher noch einmal die Frage, wie komme ich an den Text einer im WebBrowser aufgerufenen Seite ohne OleObject, das ja im FMX.TWebBrowser nicht im Angebot ist?
Rüdiger Droste
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.883 Beiträge
 
Delphi 12 Athens
 
#8

AW: Text einer Internetseite in Memo einlesen

  Alt 22. Mär 2025, 14:57
Daher noch einmal die Frage, wie komme ich an den Text einer im WebBrowser aufgerufenen Seite ohne OleObject, das ja im FMX.TWebBrowser nicht im Angebot ist?
Funktioniert mit dem genannten EvaluateJavaScript etwas nicht?
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Rued
Rued

Registriert seit: 14. Mai 2008
Ort: Schleching
105 Beiträge
 
Delphi 12 Athens
 
#9

AW: Text einer Internetseite in Memo einlesen

  Alt 22. Mär 2025, 15:22
Daher noch einmal die Frage, wie komme ich an den Text einer im WebBrowser aufgerufenen Seite ohne OleObject, das ja im FMX.TWebBrowser nicht im Angebot ist?
Funktioniert mit dem genannten EvaluateJavaScript etwas nicht?
Ich habe damit noch nicht gearbeitet:

Delphi-Quellcode:
var
  JS: string;
begin
   JS := 'var text = encodeURIComponent(document.body.innerText);' ;
  WebBrowser1.EvaluateJavaScript(JS);
Wie komme ich jetzt an text ?
Rüdiger Droste
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.123 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Text einer Internetseite in Memo einlesen

  Alt 22. Mär 2025, 15:32
Moin Rüdiger,

vielleicht kannst Du hiermit Klasse HTMLDocument etwas anfangen.
Da wird der Content aus der Zwischenablage bezogen. Wenn ich den Text der aufgerufenen Website erst einmal in der Zwischenablage habe, dann habe ich schon gewonnen. Denn dann habe ich ihn auch im Memo-Feld, in dem ich den Text durchsuchen kann. Mit irgendwelchen Tags habe ich dann nichts am Hut.

Daher noch einmal die Frage, wie komme ich an den Text einer im WebBrowser aufgerufenen Seite ohne OleObject, das ja im FMX.TWebBrowser nicht im Angebot ist?
Dann schau Dir mal das Beispiel im zweiten Beitrag von "Klasse HTMLDocument" an.
Da wird, u.a., der gesamte Content (Text) ausgelesen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz