Wie kann ich einen HTML Quellcode in Text Datei per Batch oder VB speichern?
Hallo,
ich bin noch relativ neu, was das Programmieren von Batch oder VB-Software betrifft!
Aber ohne Aufgabe kein Lerneffekt! Und da bräucht ich mal Eure hilfe!
ich möchte gern ein kleines Programm schreiben, welches die derzeitige öffentlich IP anzeigt!
Der Ablauf des Programms ist mir eigentlich klar!
1. Laden einer HTML-Seite (z.b. wieistmeineip)
2. Quellcode in Datei zwischenspeichern
3. Schließen des Browsers
4. Auswerten des Quellcodes
5. Anzeigen der IP
Alles soweit nicht das Problem, nur wie bekomme ich den Quellcode
eines X-beliebigen Browsers in eine Textdatei gespeichert?
Wäre schön, wenn Ihr mir da unter die Arme greifen könntet!
Bis denn
FunkerVogt
ich bin noch relativ neu, was das Programmieren von Batch oder VB-Software betrifft!
Aber ohne Aufgabe kein Lerneffekt! Und da bräucht ich mal Eure hilfe!
ich möchte gern ein kleines Programm schreiben, welches die derzeitige öffentlich IP anzeigt!
Der Ablauf des Programms ist mir eigentlich klar!
1. Laden einer HTML-Seite (z.b. wieistmeineip)
2. Quellcode in Datei zwischenspeichern
3. Schließen des Browsers
4. Auswerten des Quellcodes
5. Anzeigen der IP
Alles soweit nicht das Problem, nur wie bekomme ich den Quellcode
eines X-beliebigen Browsers in eine Textdatei gespeichert?
Wäre schön, wenn Ihr mir da unter die Arme greifen könntet!
Bis denn
FunkerVogt
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 142255
Url: https://administrator.de/contentid/142255
Ausgedruckt am: 22.11.2024 um 15:11 Uhr
14 Kommentare
Neuester Kommentar
Moin moin,
mit Batch alleine klappt das nicht, du brauchst dann externe Programme wie zum Beispiel wget.exe oder Zugriff auf VB??
Wobei du offengelassen hast hast, was du mit VB-Software meinst:
Gruß
LotPings
mit Batch alleine klappt das nicht, du brauchst dann externe Programme wie zum Beispiel wget.exe oder Zugriff auf VB??
Wobei du offengelassen hast hast, was du mit VB-Software meinst:
- VBA
- VBS
- VB1-6
- VB.Net
Gruß
LotPings
Der Internet Explorer lässt sich eigentlich recht gut scripten.
http://msdn.microsoft.com/en-us/library/aa752084%28VS.85%29.aspx
Wenn du lange genug suchst kommst du sicher auch an das DOM der Seite, was Schritte 2-4 überflüssig macht.
http://msdn.microsoft.com/en-us/library/aa752084%28VS.85%29.aspx
Wenn du lange genug suchst kommst du sicher auch an das DOM der Seite, was Schritte 2-4 überflüssig macht.
Moin bastla,
wobei IMO wieistmeineip.de so mit Werbung überfrachtet ist, dass ich sie nicht empfehlen würde.
Deutlich besser ist whatismyip.com die wirklich nur die WAN-IP zurückgibt. Bei Rob van der Woude' Scriptintg Pages gibt es eine VBscript-Function die das über das DOM ausliest.
Mit dieser Site und wget.exe ist es auch in Batch recht einfach:
Gruß
LotPings
Wobei man immer wieder empfehlen muss, doch bitte mal unten auf dieser Seitenachzusehen, ob da nicht schon eine Lösung bereitliegt
wobei IMO wieistmeineip.de so mit Werbung überfrachtet ist, dass ich sie nicht empfehlen würde.
Deutlich besser ist whatismyip.com die wirklich nur die WAN-IP zurückgibt. Bei Rob van der Woude' Scriptintg Pages gibt es eine VBscript-Function die das über das DOM ausliest.
Mit dieser Site und wget.exe ist es auch in Batch recht einfach:
wget http://www.whatismyip.com/automation/n09230945.asp -O MyWanIP.txt
set /P MyWanIP=<MyWanIP.txt
Set MyWanIP
Gruß
LotPings
Wobei man immer wieder empfehlen muss, doch bitte mal unten auf dieser Seitenachzusehen, ob da nicht schon eine Lösung bereitliegt
Hallo LotPings!
Grüße
bastla
wobei IMO wieistmeineip.de so mit Werbung überfrachtet ist, dass ich sie nicht empfehlen würde.
Habe ich auch nicht - die in meinem Batch-/Script-Vorschlag im verlinkten Beitrag abgefragte Seite http://checkip.dyndns.com/ funktioniert weiterhin wie beschrieben (und die ist definitiv nicht überfrachtet ) ...Grüße
bastla
Habe ich auch nicht - die in meinem Batch-/Script-Vorschlag im verlinkten Beitrag abgefragte Seite http://checkip.dyndns.com/ funktioniert weiterhin wie beschrieben (und die ist definitiv nicht überfrachtet
Mea culpa der Thread war so lang, ich hab wohl irgendwann den Überblick verloren.
Gruß0
LotPings
Zitat von @FunkerVogt:
Soo,
ich hab das ganze in Kombination von dem genialen Programm wget.exe, dem Quelltext von Lotpings und ein bischen VB6 hinbekommen!
Und funktioniert soweit bestens!
Das einzige Problem was ich noch habe, ist kein WAN vorhanden also steht kein IP
Wert in der .txt Datei schreibt mir VB --> Lesen hinter Dateiende<-- und bricht mit
Fehlermeldung ab!
Aber sonst geht es wunderbar!
Ich danke Euch allen vielmals!
Soo,
ich hab das ganze in Kombination von dem genialen Programm wget.exe, dem Quelltext von Lotpings und ein bischen VB6 hinbekommen!
Und funktioniert soweit bestens!
Das einzige Problem was ich noch habe, ist kein WAN vorhanden also steht kein IP
Wert in der .txt Datei schreibt mir VB --> Lesen hinter Dateiende<-- und bricht mit
Fehlermeldung ab!
Aber sonst geht es wunderbar!
Ich danke Euch allen vielmals!
Dafür gibt es z.bsp. die Fehlerbehandlung.
Oben in der Prozedur z.Bsp
On Error GoTo Dateifehler
Und unten in der Prozedur dann in etwa so.
Exit Sub
Dateifehler:
if err=44 then
"mach was"
else
"mach was anderes"
end if
Natürlich gibts auch noch die Möglichkeit das ganze anders zu programmieren damit der Fehler erst schon gar nicht auftritt ;)
Hallo FeuerVogt,
hab ich das jetz richtig verstanden das du aus vb heraus wget.exe mit einer temporären Datei aufrufst?
Dann doch lieber einen vb.net Schnipsel den du auch ganz ohne extra Compiler bei installiertem Dot.Net Framework mit vbc.exe kompilieren kannst.
Der steckt unterhalb von "%Systemroot%\Microsoft.NET\Framework\" in einem Versionsabhängigen Unterverzeichnis ( v1.0.3705 / v1.1.4322 / v2.0.50727 / v3.0 / v3.5 ..)
Dieser vb-code gibt nur die WanIP auf der Kommadozeile aus:
Gruß
LotPings
hab ich das jetz richtig verstanden das du aus vb heraus wget.exe mit einer temporären Datei aufrufst?
Dann doch lieber einen vb.net Schnipsel den du auch ganz ohne extra Compiler bei installiertem Dot.Net Framework mit vbc.exe kompilieren kannst.
Der steckt unterhalb von "%Systemroot%\Microsoft.NET\Framework\" in einem Versionsabhängigen Unterverzeichnis ( v1.0.3705 / v1.1.4322 / v2.0.50727 / v3.0 / v3.5 ..)
Dieser vb-code gibt nur die WanIP auf der Kommadozeile aus:
Class Sample
Public Shared Sub Main()
Dim WC As New System.Net.WebClient
System.Console.WriteLine(System.Text.Encoding.ASCII.GetString( _
WC.DownloadData( "http://whatismyip.com/automation/n09230945.asp")))
WC.Dispose()
End Sub 'Main
End Class 'Sample
Gruß
LotPings