Hallo.
Ich bin etwas verzweifelt, da ich nun schon seit Tagen versuche aus einer Hikvision Kamera ein jpg Bild von einer Logic zu pullen.
Ich komme da absolut nicht weiter.....
Bei anderen Kameras wo entweder kein oder das Passwort am Ende geschrieben wird ist das kein Problem. Aber eben hier, wo das Passwort vorne stehen muss.
Der HTML aufruf den ich Browser eingeben muss um ein Bild zu bekommen ist:
http://User:Passwort@IP/Streaming/channels/101/picture
Das Problem was sich jetzt daraus ergibt, ist der Doppelpunkt zwischen dem User und dem Passwort.
URLLIB versucht nun immer den Port "Passwort@IP...." zu finden.
Der aufruf der URL erfolgt so:
Damit speichere ich das Bild temporär und benutze es später zum Senden mit Pushbullet und FTP Speicherung.
Was ich schon versucht habe....
Damit oder mit anderen Beispielen die alle das Auth. oder passwordmgr benutzen komme ich überhaupt nicht klar .-(
Ich weiss auch nicht was dann aus der URL gemacht wird. Blicke einfach nicht durch... .-(
Dann habe ich noch diese Lösung gefunden:
Das hat mir aber auch nicht weiter geholfen.
Das ist echt blöd wenn man einfach nicht mehr weiter weiss!
Ihr seid jetzt meine letzte Hoffnung. Evtl kann mir da jemand den entscheidenden Tip geben!
Grüße, Marc
Ich bin etwas verzweifelt, da ich nun schon seit Tagen versuche aus einer Hikvision Kamera ein jpg Bild von einer Logic zu pullen.
Ich komme da absolut nicht weiter.....
Bei anderen Kameras wo entweder kein oder das Passwort am Ende geschrieben wird ist das kein Problem. Aber eben hier, wo das Passwort vorne stehen muss.
Der HTML aufruf den ich Browser eingeben muss um ein Bild zu bekommen ist:
http://User:Passwort@IP/Streaming/channels/101/picture
Das Problem was sich jetzt daraus ergibt, ist der Doppelpunkt zwischen dem User und dem Passwort.
URLLIB versucht nun immer den Port "Passwort@IP...." zu finden.
Der aufruf der URL erfolgt so:
Code:
with urllib.request.urlopen(bild_url) as response, open('/tmp/cam'+bild_dateiname1, 'wb') as out_file: shutil.copyfileobj(response, out_file)
Was ich schon versucht habe....
Code:
import urllib2 SERVER = 'example.com/pass-protected/' authinfo = urllib2.HTTPPasswordMgrWithDefaultRealm() authinfo.add_password(None, SERVER, 'testuser', 'test-user-pass') page = 'HTTP://'+SERVER+'/cgi-bin/tools/orders_waiting.py' handler = urllib2.HTTPBasicAuthHandler(authinfo) myopener = urllib2.build_opener(handler) opened = urllib2.install_opener(myopener) output = urllib2.urlopen(page) do_something(output)
Ich weiss auch nicht was dann aus der URL gemacht wird. Blicke einfach nicht durch... .-(
Dann habe ich noch diese Lösung gefunden:
Code:
username = 'XXX' password = 'YYYYYY' print(requests.get(bild_url, auth=(username, password)).content)
Das ist echt blöd wenn man einfach nicht mehr weiter weiss!
Ihr seid jetzt meine letzte Hoffnung. Evtl kann mir da jemand den entscheidenden Tip geben!
Grüße, Marc
Kommentar