Ich habe eine seltsame Aufgabe zu erledigen. Ich brauche, um eine Webseite innerhalb eines Iframe zu laden. Und was auch immer Text, den ich innerhalb des Iframe auswählen, ich brauche, um das von außerhalb des Iframe abzurufen. Ich darf kein Javascript verwenden. Gibt es eine Möglichkeit, das in asp.net c# zu tun?
Antwort
Zu viele Anzeigen?Ich stimme zu, dass es eine seltsame Aufgabe ist. Ich persönlich würde Situationen wie diese vermeiden, aber wenn es das ist, was Sie tun müssen, ist dies, wie ich es angehen würde.
-
Ich empfehle Ihnen eine Bibliothek namens Html Agility Pack
-
Fügen Sie einen Verweis auf die HTMLAgilityPack.dll zu Ihrer asp.net-Anwendung hinzu.
-
Wenn Sie die URL der Seite im Iframe kennen, können Sie diese Website scrapen, z. B.
WebClient webClient = new WebClient(); byte[] reqHTML; reqHTML = webClient.DownloadData("http://www.urltothesiteyouwant.com/path/"); UTF8Encoding objUTF8 = new UTF8Encoding(); string htmlOfSite = objUTF8.GetString(reqHTML);
-
Werfen Sie einen Blick auf die Website des Html Agility Packs und Beispielseite für weitere Informationen über die Nutzung der Bibliothek.
Auf diese Weise können Sie den benötigten Text von der externen Website übernehmen und auf Ihrer eigenen Website anzeigen. Es ist immer wichtig, sich über die rechtlichen Aspekte zu informieren und zu prüfen, ob die Informationen, die Sie von dieser Website abrufen möchten, auf anderen Websites wiedergegeben werden dürfen usw.
HTH.