FAQ
Dear all,
I have made local webserver up by the python script

import string,cgi,time
from os import curdir, sep
from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer
#import pri
import glob
import logging
import logging.handlers
class MyHandler(BaseHTTPRequestHandler):

def do_GET(self):
try:
if self.path.endswith(".html"):
f = open(curdir + sep + self.path) #self.path has /
test.html
#note that this potentially makes every file on your computer readable
by the internet

self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
self.wfile.write(f.read())
f.close()
return
if self.path.endswith(".esp"): #our dynamic content
self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
self.wfile.write("hey, today is the" +
str(time.localtime()[7]))
self.wfile.write(" day in the year " +
str(time.localtime()[0]))
return

return

except IOError:
self.send_error(404,'File Not Found: %s' % self.path)


def do_POST(self):
global rootnode
try:
ctype, pdict =
cgi.parse_header(self.headers.getheader('content-type'))
if ctype == 'multipart/form-data':
query=cgi.parse_multipart(self.rfile, pdict)
self.send_response(301)

self.end_headers()
upfilecontent = query.get('upfile')
print "filecontent", upfilecontent[0]
self.wfile.write("<HTML>POST OK.<BR><BR>");
self.wfile.write(upfilecontent[0]);

except :
pass

def main():
try:
server = HTTPServer(('', 80), MyHandler)
print 'started httpserver...'
server.serve_forever()
except KeyboardInterrupt:
print '^C received, shutting down server'
server.socket.close()

if __name__ == '__main__':
main()


I have designed one html page also.
when i access the HTML page ,i want to capture following things
user_agents client-request ,server-response with the help of python
script.
please guide me to write such python script with which i can log all
server /client request and response.

Regards,
Shanti Bhushan
shanti.bhushan at hotmail.com

Search Discussions

  • Gabriel Genellina at Jun 15, 2010 at 6:47 am
    En Tue, 15 Jun 2010 00:41:08 -0300, shanti bhushan
    <ershantibhushan at gmail.com> escribi?:
    Dear all,
    I have made local webserver up by the python script

    from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer

    class MyHandler(BaseHTTPRequestHandler):

    def do_GET(self):
    try:
    if self.path.endswith(".html"):
    f = open(curdir + sep + self.path) #self.path has /
    [...]

    def main():
    try:
    server = HTTPServer(('', 80), MyHandler)
    print 'started httpserver...'
    server.serve_forever()
    [...]


    I have designed one html page also.
    when i access the HTML page ,i want to capture following things
    user_agents client-request ,server-response with the help of python
    script.
    please guide me to write such python script with which i can log all
    server /client request and response.
    HTTPServer already logs the request - using sys.stderr, but you may
    override log_message() if you want:
    http://docs.python.org/library/basehttpserver.html#BaseHTTPServer.BaseHTTPRequestHandler.log_message

    If you want to log the response, do that in the request handler, a good
    place would be at the end of your do_GET() method above.

    --
    Gabriel Genellina

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppython-list @
categoriespython
postedJun 15, '10 at 3:41a
activeJun 15, '10 at 6:47a
posts2
users2
websitepython.org

People

Translate

site design / logo © 2022 Grokbase