Wie automatisch in geschützten Bereich einloggen ?

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
snakeseven
User
Beiträge: 405
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Montag 29. Januar 2007, 16:15

Hi,
wie man sich in eine Seite, die ein Login-Form enthält, per urllib.urlopen() einloggt, steht in diesem Forum mehrfach beschrieben. Aber ich habe das Problem, daß ich mich in einen geschützten Bereich einloggen muss. Und zwar nicht per SendKeys(), sondern per URL + Login und Passwort. Aber wie anstellen, ich bekomme es nicht hin ? Kann wer einen Tipp geben ?

Gruss, Seven
Zuletzt geändert von snakeseven am Dienstag 6. März 2007, 09:23, insgesamt 1-mal geändert.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Montag 29. Januar 2007, 17:01

snakeseven hat geschrieben:Kann wer einen Tipp geben?
Hi Seven!

Tipp: http://www.python-forum.de/topic-3157.html

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
snakeseven
User
Beiträge: 405
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Montag 29. Januar 2007, 17:21

Hi Gerold,
bekomme leider eine Fehlermeldung:

Code: Alles auswählen

File "C:\Programme\Python24\lib\urllib2.py", line 480, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 403: Forbidden
Gruss, Seven
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Montag 29. Januar 2007, 17:32

Hi Seven!

Bei mir funktionierts:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: iso-8859-1 -*-

import urllib2
import base64


def download_file(url, webuser = None, webpass = None):
    """
    Downloads a file
    """

    request =  urllib2.Request(url)

    if webuser:
        base64string = base64.encodestring('%s:%s' % (webuser, webpass))[:-1]
        request.add_header("Authorization", "Basic %s" % base64string)

    htmlFile = urllib2.urlopen(request)
    htmlData = htmlFile.read()
    htmlFile.close()

    return htmlData


def main():
    url = "http://audioplazza.de/seven/bild.jpg"
    webuser = "tester"
    webpass = "dummy07"
    print download_file(url, webuser, webpass)


if __name__ == "__main__":
    main()
lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
snakeseven
User
Beiträge: 405
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Montag 29. Januar 2007, 18:05

Bei mir jetzt auch :D

Gruss, Sven
Antworten