Problem mit urllib2 und Formularen.[solved]

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
AngelusNoctis
User
Beiträge: 92
Registriert: Sonntag 16. Dezember 2007, 20:03

Hi

Ich versuch irgendwie für meine Mainchat (test-chat.mainchat.de) einen Bot zu schreiben der nach geraumer Zeit eine Willkommensnachricht schreibt (alle 60 Minuten).

Leider bin ich noch Python frischling und hab keinen Plan wieso es nicht funktioniert.


Dies funktioniert:

Code: Alles auswählen

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

import urllib2

url ='http://chat6.fidion.de/index.php?http_host=test-chat.mainchat.de&id=&aktion=login'
   response = urllib2.urlopen(url)
   response.close()
Aber der hier nicht:

Code: Alles auswählen

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

import urllib2

SessionID = raw_input('Bitte SessionID eingeben: ')
Text = raw_input('Bitte Text eingeben: ')

url ='http://chat6.fidion.de/schreibe.php?http_host=test-chat.mainchat.de&id=' + SessionID + '&schreibe.php&text2=' + Text + '&action=Go!'
   response = urllib2.urlopen(url)
   response.close()
Ist ein einfaches Beispiel.

Das Problem ist das wenn ich den Link im Browser öffne funktionierts (ohne die + und variablen), wenn ich es aber eben mit urllib2.urlopen mach funktioniert es nicht. Irgendwie wird der Link falsch übergeben.

Kann mir einer sagen wieso oder wie man sowas macht?
Zuletzt geändert von AngelusNoctis am Montag 17. Dezember 2007, 07:17, insgesamt 1-mal geändert.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Die Gründe können vielfältig sein, zum Beispiel dass der Useragent falsch ist etc.

Nutze für so etwas besser den programmierbaren Browse, Mechanize - damit wird so etwas viel einfacher.

Oder vergiss so dumme webbasierte Systeme und nutze gleich etwas gescheites wie IRC.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
AngelusNoctis
User
Beiträge: 92
Registriert: Sonntag 16. Dezember 2007, 20:03

Habs hinbekommen :)

Trotzdem danke
Antworten