AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Bild-URL aus Frame auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Bild-URL aus Frame auslesen

Ein Thema von Jacques Murell · begonnen am 23. Jul 2011 · letzter Beitrag vom 23. Jul 2011
Antwort Antwort
Benutzerbild von Jacques Murell
Jacques Murell

Registriert seit: 7. Jun 2010
113 Beiträge
 
Turbo Delphi für Win32
 
#1

Bild-URL aus Frame auslesen

  Alt 23. Jul 2011, 17:42
Moin,

via
ImageURL := Webbrowser.OleObject.Document.Images.Item(1).Src; Lese ich die URL des ersten bzw. zweiten Bildes auf einer Webseite aus. Soweit kein Problem.

Nun müsste ich aber leider die URL des ersten Bildes welches in einem iFrame auf dieser Seite liegt herausfinden. Ich habe mir schon nen Wolf gesucht aber irgendwie weiß ich nicht wie ich das Bild in diesem Frame ansteuern bzw. die URL herausfinden soll.

Kann jemand helfen?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.166 Beiträge
 
Delphi 12 Athens
 
#2

AW: Bild-URL aus Frame auslesen

  Alt 23. Jul 2011, 17:50
Erstmal auf den Frame zugreifen und dort dann auf's Bild?

Gibt doch bestimmt sowas wie Webbrowser.OleObject.Document.Frames oder Webbrowser.OleObject.Frames ?
Also dann quasi Webbrowser.OleObject.Document.Frames(i).{Document.}Images.Item(1).Src
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (23. Jul 2011 um 17:55 Uhr)
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#3

AW: Bild-URL aus Frame auslesen

  Alt 23. Jul 2011, 17:55
Geht sicher einfacher, aber ich würde das wohl so angehen:
Den Quelltext des iFrame (Inhalt) holen und über ein RegEx-Suchmuster, das nach <img>-Tags sucht, durchparsen und aus den gefundenen Ergebnissen den value von "src" auslesen.
In Perl-Regex-Syntax wäre das ungefähr folgendes Pattern für den ersten Lauf (ohne Gewähr..):
Code:
/<img[^>]+>/i
und für den zweiten Lauf für die extrahierten <img>-Tags:
Code:
/(src)=("[^"]*")/i
  Mit Zitat antworten Zitat
Benutzerbild von Jacques Murell
Jacques Murell

Registriert seit: 7. Jun 2010
113 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Bild-URL aus Frame auslesen

  Alt 23. Jul 2011, 18:06
Erstmal auf den Frame zugreifen und dort dann auf's Bild?

Gibt doch bestimmt sowas wie Webbrowser.OleObject.Document.Frames oder Webbrowser.OleObject.Frames ?
Also dann quasi Webbrowser.OleObject.Document.Frames(i).{Document.}Images.Item(1).Src
Ja so hatte ich das auch versucht aber keinen Erfolg. Da fehlt leider ne ordentliche Dokumentation dieser Komponente.

Edit: So muss es lauten:
sImageURL := Webbrowser.OleObject.Document.Frames.item(0).Document.Images.Item(0).Src;

Geändert von Jacques Murell (23. Jul 2011 um 18:28 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.166 Beiträge
 
Delphi 12 Athens
 
#5

AW: Bild-URL aus Frame auslesen

  Alt 23. Jul 2011, 18:43
@blackfin: Der Quellcode eines IFrames ist nicht in die Seite eingebettet, also selbst wenn er den Quellcode der webseite ausließt, kommt man so garantiert nicht an die Bilder eines Frames.
Also wenn schon, dann zuerst den Frame suchen, diesen runterladen und dann darin suchen.

Aber wie er ohne RegEx an die Bilder einer HTML-Datei rankommtn, hat er ja schon ... nur den Frame muß man erstmal finden.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#6

AW: Bild-URL aus Frame auslesen

  Alt 23. Jul 2011, 19:33
Zitat:
Der Quellcode eines IFrames ist nicht in die Seite eingebettet.
Hab ich das gesagt?
Zitat:
Also wenn schon, dann zuerst den Frame suchen, diesen runterladen und dann darin suchen.
Das hab ich doch geschrieben...:
Zitat von blackfin:
Den Quelltext des iFrame (Inhalt) holen
Er soll sich den Inhalt des iFrame holen...und ein eigener Browser kommt da doch ran. (Muss es ja auch irgendwie rendern

Geändert von blackfin (23. Jul 2011 um 19:38 Uhr)
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#7

AW: Bild-URL aus Frame auslesen

  Alt 23. Jul 2011, 20:03
Enthält das IFrame nur das Bild? Also so etwas:
Code:
<html>
  <head>
    <title></title>
  </head>
  <body>
    <iframe src="http://www.google.de/images/nav_logo82.png">
    </iframe>
  </body>
</html>
Falls ja, würde ich alle Elemente in Document.All durchsuchen, bis ein IFrame-Objekt auftaucht (NodeName=IFRAME) und von dem die Src-Eigenschaft auslesen:
iframe3.jpg

Das Bild ist dann nämlich offenbar weder in Document.Images enthalten
iframe1.jpg
noch über Documents.Frames[...] ermittelbar:
iframe2.jpg
Thomas Nitzschke
Google Maps mit Delphi
  Mit Zitat antworten Zitat
Antwort Antwort


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 01:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz