Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1456to1460
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeitlich begrenzt gültige SessionID auslesen

Zeitlich begrenzt gültige SessionID auslesen
21.11.2015 13:29:43
mpb
Hallo,
ich möchte von der Website
https://www.insolvenzbekanntmachungen.de/cgi-bin/bl_suche.pl
die eröffneten Insolvenzen der letzen Woche (aktuell 9.-15.11.) mit VBA auslesen und in Excel weiterverarbeiten. Das funktioniert mit diesem Code:
Sub Insolveneroeffnungen_Auslesen()
Dim INSOtxt As Variant
Dim URL_INSO As String
Dim Seiten As Integer
Dim i As Integer
Dim DBeginn As String
Dim DEnde As String
Seiten = 1
DBeginn = "09.11.2015"
DBeginn = "15.11.2015"
URL_INSO = "https://www.insolvenzbekanntmachungen.de//cgi-bin/bl_suche.pl?PHPSESSID= _
af65d119cc9720d9377a4732ce901e9a&Suchfunktion=uneingeschr&Absenden=Suche+starten&Bundesland=--+Alle+Bundesl%E4nder+--&Gericht=--+Alle+Insolvenzgerichte+--&Datum1=" & DBeginn & "&Datum2=" & DEnde & "&Name=&Sitz=&Abteilungsnr=&Registerzeichen=--&Lfdnr=&Jahreszahl=--&Registerart=--+keine+Angabe+--&select_registergericht=&Registergericht=--+keine+Angabe+--&Registernummer=&Gegenstand=Er%F6ffnungen&matchesperpage=100&sortedby=Datum&page=" & i & " #Ergebnis%22" 'Laden der URL
With CreateObject("MSXML2.XMLHTTP")
.Open "GET", URL_INSO, False
.send
INSOtxt = .responseText
End With
MsgBox Len(INSOtxt)
'Weiterer Code zur Verarbeitung der Suchergebnisse
End Sub

Allerdings benötige ich eine gültige SessionID. In obigem Code ist das alles rechts vom Gleichheitszeichen in
PHPSESSID=af65d119cc9720d9377a4732ce901e9a
Diese SessionID ist allerdings nur eine begrenzte Zeit gültig (wie lange weiß ich nicht). Ändere ich die SessionID im Code ab, erhalte ich die Nachricht von der Website, die Session sei abgelaufen.
Bisher führe ich behelfsweise die Suchabfrage händisch durch. Die dabei vom "System" vergebene SessionID suche ich im Quelltext der HTML-Seite, die das Suchergebnis enthält, und übertrage sie per copy und paste in meinen VBA-Code. Das funktioniert auch, ist aber unpraktikabel, wenn von wenig IT-affinen Kollegen die Abfrage und Weiterverabeitung in Excel durchgeführt werden soll.
Was ich benötige ist eine gültige SessionID, entweder mit VBA von der Website ausgelesen oder simuliert. Gibt es da irgendeine Möglichkeit?
Gruß
Martin

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeitlich begrenzt gültige SessionID auslesen
21.11.2015 16:48:38
Michael
Hi Martin,
die Suche der SessionID im Quelltext kannst Du ja auch per VBA machen; dann speicherst Du sie in einer Variablen und hängst diese in den Aufruf hinein.
Also, angenommen die Variable heißt PHP_ID, dann schreibt sich das so:
URL_INSO = "https://www.insolvenzbekanntmachungen.de//cgi-bin/bl_suche.pl?PHPSESSID=" _
& PHP_ID & "&Absenden=Suche+starten&Bundesland= usw.usw."
Das Suchen sollte mit VBA gut ja kein Problem darstellen; ein Beispiel mit IE (statt MSXML) findest Du hier: http://www.business-spreadsheets.com/forum.asp?t=554
Ich habe Deinen URL-String genommen, die PHPSESSID rausgenommen, die Datumsvariablen durch die Datümer ersetzt und das "i" (Page) durch "1". So: https://www.herber.de/bbs/user/101702.txt
Wenn ich das im Browser eingebe, erhalte ich die Trefferübersicht mit links zu den weiteren Seiten incl. SESSID. Diesen Quelltext durchsuchst Du mit instr und es sollte tun.
Schöne Grüße,
Michael

Anzeige
AW: Zeitlich begrenzt gültige SessionID auslesen
22.11.2015 11:32:47
mpb
Hallo Michael,
vielen Dank. Mein Denkfehler war, dass ich davon ausging, überhaupt eine SessionID zu benötigen. Der Weg, den Du aufzeigst, ist für mich perfekt. Vielen Dank!
Gruß
Martin
P.S.Vor 10-15 Jahren (oder wann auch immer das Forum hier startete), als ich hier noch wirklich aktiv war, hätte ich "VBA gut" mit gutem Gewissen ausgewählt. Heute ist es eher "VBA mittel". ;-)

gerne, vielen Dank für die Rückmeldung,
22.11.2015 15:51:54
Michael
Martin,
ich war nur neugierig, was überhaupt zurückgeliefert wird - ein Glücksgriff.
Deinem PS kann ich mich nur anschließen - ich bin noch nicht so lange dabei, aber es gibt hier soooo gute Leute, zum Glück, von denen man immer was lernen kann.
Happy Exceling,
Michael
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige