Um es zu testen habe ich einen Server laufen lassen der mir die Gesendeten Daten ausgibt.
Wenn ich es per Opera abschicke sieht es folgendermasen aus:
Mit folgendem Script:POST / HTTP/1.1
User-Agent: Opera/8.52 (X11; Linux i686; U; de)
Host: localhost:5002
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: de,en;q=0.9
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Connection: Keep-Alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 81
parent_pid=&poster=mein+name&paste=Send&language=python&code=mehrzeilig%0D%0Arulz
Code: Alles auswählen
#!/usr/bin/env python
import httplib, urllib
post = urllib.urlencode({"poster":"mein name","paste":"Send","language":"python","code":"mehrzeilig\nrulz"})
headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
conn = httplib.HTTPConnection("localhost:5002")
conn.request("POST", "/", post, headers)
response = conn.getresponse()
data = response.read()
conn.close()
Folgende Fehlermeldung wird ausgegeben:POST / HTTP/1.1
Host: localhost:5002
Accept-Encoding: identity
Content-Length: 66
Content-type: application/x-www-form-urlencoded
Accept: text/plain
Weis jemand wie ich das Scipt anpassen muss um die Daten zum Server zu bekommen?python /tmp/stind1.py
Traceback (most recent call last):
File "/tmp/stind1.py", line 7, in ?
response = conn.getresponse()
File "/usr/lib/python2.4/httplib.py", line 863, in getresponse
response.begin()
File "/usr/lib/python2.4/httplib.py", line 333, in begin
version, status, reason = self._read_status()
File "/usr/lib/python2.4/httplib.py", line 297, in _read_status
raise BadStatusLine(line)
httplib.BadStatusLine
Danke schon mal
pythonist