pycurl USERPWD als variable angeben?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
vogti
User
Beiträge: 31
Registriert: Mittwoch 21. Januar 2009, 21:53
Kontaktdaten:

pycurl USERPWD als variable angeben?

Beitragvon vogti » Samstag 14. März 2009, 17:14

Hallo,
ich möchte mich via pycurl authentifizieren. Auch kein Problem, wenn ich das nach diese Optionen setze:

Code: Alles auswählen

c.setopt(pycurl.USERPWD, "BENUTZERNAME:PASSWORT")


Jetzt habe ich aber BENUTZERNAME in einer Variable a und PASSWORT in einer Variable b verpackt.

Code: Alles auswählen

a = BENUTZERNAME
b=PASSWORT
c.setopt(pycurl.USERPWD, "a:b")

Und schon hat das ganze nicht mehr hin, da das ganze ja eigentlich als String angegeben wird. Gibt es eine Möglichkeit das anders anzugeben? Einen trick?


lg,
vogti
Benutzeravatar
cofi
Moderator
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Beitragvon cofi » Samstag 14. März 2009, 17:16

Und was spricht gegen

Code: Alles auswählen

c.setopt(pycurl.USERPWD, "%s:%s" % (username, password))
Benutzeravatar
Hyperion
Moderator
Beiträge: 7471
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Samstag 14. März 2009, 17:17

Wieso bitte schön zeigst Du uns den Code, der funktioniert, aber nicht den Code, der nicht funktioniert? *wunder*

Wie soll man dann bitte schln etwas dazu sagen.

Zusätzlich wäre die genaue Fehlermeldung wünschenswert, da wir das sicherlich nicht selber austesten können und wollen!

Edit: Aha ... nach Nachbearbeitung dann doch ;-) Aber Cofi hat Dir die Lösung ja schon gepostet. Du solltest Dich allerdings einmal mit den Grundlagen von Python befassen, wenn es schon an so etwas scheitert.
vogti
User
Beiträge: 31
Registriert: Mittwoch 21. Januar 2009, 21:53
Kontaktdaten:

Beitragvon vogti » Samstag 14. März 2009, 17:22

@Hyperion: Ja, du hast sicher recht. Aber dafür bin ich zu ungeduldig. Letztendlich habe ich noch eine eigene, funktionierende Lösung gefunden:

Code: Alles auswählen

c.setopt(pycurl.USERPWD, a+":"+b)


@cofi: dank dir für deine Mühe! Jetzt noch fürs Verständnis: was genau haben diese %s zu sagen und gibt es einen Nachteil bei meiner Variante?
Benutzeravatar
cofi
Moderator
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Beitragvon cofi » Samstag 14. März 2009, 17:52

http://docs.python.org/library/stdtypes ... formatting

Der Nachteil deiner Variante ist, dass sie unglaublich hässlich und fehleranfällig ist. Zumindest im Vergleich mit String-Formatting, da du dort den ganzen String modellierst und nur Ersetzungen vornimmst.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7471
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Samstag 14. März 2009, 17:59

vogti hat geschrieben:@Hyperion: Ja, du hast sicher recht. Aber dafür bin ich zu ungeduldig.

Es spricht ja nichts dagegen, sich Dinge gezielt anzugucken, die man konkret für sein Projekt braucht! Aber so ganz ohne die Grundlagen wirst Du auf Dauer keine Freude mit einer Sprache haben ...

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder