From: Steve Holden on 18 Mar 2010 22:43 Brandon Conner wrote: > Hey Pythoners, > > its my first post here, yay! > > I'm trying to develop a script that will return the results of a POST > request that should list all images uploaded by a user. However, when i > run the script, i get returned the HTML of the page with the search > form. I am wondering what am i doing incorrectly? Is it something I'm > doing or is the imagebin server rejecting my request? > > here's the code: > > import urllib > import urllib2 > url = 'http://imagebin.org/index.php?page=search' > values = {'search_for' : 'blah', 'field' : 'Nickname'} > data = urllib.urlencode(values) > request = urllib2.Request(url, data) > response = urllib2.urlopen(request) > page = response.read() > print page > > tks, pythons great > You need to tell the browser (in an HTTP header) that what you are sending is HTML. Try putting print "Content-Type: text/html\n" at the start of your script. regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 See PyCon Talks from Atlanta 2010 http://pycon.blip.tv/ Holden Web LLC http://www.holdenweb.com/ UPCOMING EVENTS: http://holdenweb.eventbrite.com/
From: Cameron Simpson on 18 Mar 2010 22:57 On 18Mar2010 22:43, Steve Holden <steve(a)holdenweb.com> wrote: | Brandon Conner wrote: | > I'm trying to develop a script that will return the results of a POST | > request that should list all images uploaded by a user. However, when i | > run the script, i get returned the HTML of the page with the search | > form. I am wondering what am i doing incorrectly? Is it something I'm | > doing or is the imagebin server rejecting my request? | > | > here's the code: | > | > import urllib | > import urllib2 | > url = 'http://imagebin.org/index.php?page=search' | > values = {'search_for' : 'blah', 'field' : 'Nickname'} | > data = urllib.urlencode(values) | > request = urllib2.Request(url, data) | > response = urllib2.urlopen(request) | > page = response.read() | > print page | > | > tks, pythons great | > | You need to tell the browser (in an HTTP header) that what you are | sending is HTML. Try putting | | print "Content-Type: text/html\n" | | at the start of your script. I think it may need to be "application/x-www-form-urlencoded", not text/html. But otherwise, yes, missing Content-Type. And the request method needs to be POST; I expect the code above will be using GET unless told not to. Cheers, -- Cameron Simpson <cs(a)zip.com.au> DoD#743 http://www.cskk.ezoshosting.com/cs/ There's no trick to being a humorist when you have the whole government working for you. - Will Rogers
|
Pages: 1 Prev: Need to create subprocess... Next: example of ssl with SimpleXMLRPCServer in 2.6? |