473,387 Members | 1,611 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

where do I begin with web programming in python?

I have been to the main python site, but am still confused. I have
been using .net, so it may be obvious how to do this to everyone
else. I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. If I
have mod_python or fastcgi on apache, where do I start? I don't have
clue where to begin to create a web page from scratch in python. I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.

Thank you for any help.
Jun 27 '08 #1
8 1569
On May 1, 4:25*pm, jmDesktop <needin4mat...@gmail.comwrote:
I have been to the main python site, but am still confused. *I have
been using .net, so it may be obvious how to do this to everyone
else. *I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. *If I
have mod_python or fastcgi on apache, where do I start? *I don't have
clue where to begin to create a web page from scratch in python. *I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.

Thank you for any help.
The web frameworks make it a lot easier. But you can use the httplib
modules. You should check out the wiki: http://wiki.python.org/moin/WebProgramming

There's also a couple of books on the topic: "Python Web Programming"
by Steve Holden, and "Web Programming in Python" by Thiruvathukal.

Check out the cgi-type stuff especially.

Hope that helps some.

Mike
Jun 27 '08 #2
jmDesktop schrieb:
I have been to the main python site, but am still confused. I have
been using .net, so it may be obvious how to do this to everyone
else. I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. If I
have mod_python or fastcgi on apache, where do I start? I don't have
clue where to begin to create a web page from scratch in python. I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.
I highly recommend WSGI instead of mod_python or (fast)cgi. I've heard
only bad things about mod_python over the past years and CGI is totally
old school.

Check out Python Paste, CherryPy and Django. You can also try the Zope,
Zope3 and Plone world but Zope is usually for larger and complex
applications.

Most frameworks come with their own little web server for development, too.

Christian
Jun 27 '08 #3
On May 2, 7:45 am, Christian Heimes <li...@cheimes.dewrote:
jmDesktop schrieb:
I have been to the main python site, but am still confused. I have
been using .net, so it may be obvious how to do this to everyone
else. I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. If I
havemod_pythonor fastcgi on apache, where do I start? I don't have
clue where to begin to create a web page from scratch in python. I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.

I highly recommend WSGI instead ofmod_pythonor (fast)cgi. I've heard
only bad things aboutmod_pythonover the past years and CGI is totally
old school.

Check out Python Paste, CherryPy and Django. You can also try the Zope,
Zope3 and Plone world but Zope is usually for larger and complex
applications.

Most frameworks come with their own little web server for development, too.
I'd also suggest avoiding coding anything directly to mod_python and
instead base things on WSGI. You can still run it on mod_python with a
suitable adapter, but you can also run it with mod_wsgi, mod_fastcgi,
or using pure Python web servers such as the one in Paste as well.

For a low level nuts and bolts (anti framework) approach I'd suggest
looking at:

http://dev.pocoo.org/projects/werkzeug/

This gives you all the basic components, but it is really up to you as
to how you put them together, which seems to be what you want to be
able to do.

Graham

Jun 27 '08 #4
On May 1, 7:13*pm, Graham Dumpleton <Graham.Dumple...@gmail.com>
wrote:
On May 2, 7:45 am, Christian Heimes <li...@cheimes.dewrote:
jmDesktop schrieb:
I have been to the main python site, but am still confused. *I have
been using .net, so it may be obvious how to do this to everyone
else. *I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. *If I
havemod_pythonor fastcgi on apache, where do I start? *I don't have
clue where to begin to create a web page from scratch in python. *I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.
I highly recommend WSGI instead ofmod_pythonor (fast)cgi. I've heard
only bad things aboutmod_pythonover the past years and CGI is totally
old school.
Check out Python Paste, CherryPy and Django. You can also try the Zope,
Zope3 and Plone world but Zope is usually for larger and complex
applications.
Most frameworks come with their own little web server for development, too.

I'd also suggest avoiding coding anything directly to mod_python and
instead base things on WSGI. You can still run it on mod_python with a
suitable adapter, but you can also run it with mod_wsgi, mod_fastcgi,
or using pure Python web servers such as the one in Paste as well.

For a low level nuts and bolts (anti framework) approach I'd suggest
looking at:

*http://dev.pocoo.org/projects/werkzeug/

This gives you all the basic components, but it is really up to you as
to how you put them together, which seems to be what you want to be
able to do.
Or if you don't want to use any 3rd party package and have Python 2.5,
you may start from http://www.xml.com/pub/a/2006/09/27/...eb-weapon.html.
Here's the standard "Hello world!" example:

from wsgiref.simple_server import make_server

def application(environ, start_response):
start_response('200 OK',[('Content-type','text/html')])
return ['<html><body>Hello World!</body></html>']

httpd = make_server('', 8000, application)
print "Serving HTTP on port 8000..."
httpd.serve_forever()

and point your browser to http://localhost:8000/

HTH,
George
Jun 27 '08 #5
jmDesktop <ne***********@gmail.comwrites:
I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. If I
have mod_python or fastcgi on apache, where do I start? I don't have
clue where to begin to create a web page from scratch in python. I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.
I didn't notice anyone mentioning the simplest answer of them all:
write an old fashioned cgi using python's cgi module.
Jun 27 '08 #6
On May 1, 3:25*pm, jmDesktop <needin4mat...@gmail.comwrote:
I have been to the main python site, but am still confused. *I have
been using .net, so it may be obvious how to do this to everyone
else. *I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. *If I
have mod_python or fastcgi on apache, where do I start? *I don't have
clue where to begin to create a web page from scratch in python. *I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.

Thank you for any help.
Directions for a simple CGI script:

1) Start apache.

2) Use a text editor to create a webpage with a link:

<html>
<head>
<title>Python CGI Test</title>
</head>

<body>
<div>
<a href="http://localhost/cgi-bin/first.py">click me</a>
</div>
</body>

</html>

Save that file with a .htm extension anywhere on your computer, e.g.
name the file test.htm and save it in C:\My Documents.
3) The value of the link's href attribute is a special url. The url
starts with "http://localhost", or it may need to start with something
like http://localhost:8080" depending on what port number you
installed Apache on. If you used the default port when you installed
Apache, then the first part of the url will be "http:/localhost".

The rest of the url is the relative path to your cgi script. The path
is relative to your Apache2 folder. For instance, my directory
structure looks like this:

Apache2
----htdocs
----cgi-bin
--------first.py
----etc.

So the relative path to my cgi script is "/cgi-bin/first.py".

4) Create a cgi script:

#!/usr/bin/env python

#For Windows, instead of the above line use
#something like: #!C:\Python25\python.exe
#instead. The path after "#!" should be the
#path to wherever python.exe is on your computer.

import cgitb; cgitb.enable()

#The above line will cause error messages to
#be sent to your browser, which is helpful for
#debugging. Otherwise, your browser will just
#show a blank page when there is an error in your
#script

print "Content-type: text/html"
print
print "<h1>Hello World</h1>"
The first print statement is the minimum header you need when
responding to a web page. After you print all the headers you desire,
then you need to print a blank line. After the blank line, you print
the html that you want the browser to display.
5) On Unix: you have to set the file permissions for your cgi script.
Everyone must be able to read and execute your cgi script:

$ chmod 755 first.py
6) Start your web browser, and click on File>Open and navigate to
your .htm file. When your html page opens in your browser, click on
the link. The link will call your python cgi script, the cgi script
will respond my sending some html to your browser, then your browser
will display the html.
Jun 27 '08 #7
On May 2, 10:07*am, bvidinli <bvidi...@gmail.comwrote:
i also asked same question in this list last week.
i foundhttp://www.cherrypy.org/to be most suitable for me.
it is basic, easy, pure...
it contains its own webserver, very easy to start.

others have many framworks, structures, classes many many..
i wanted a pure web programming system , i found cherrypy.

see you.

2008/5/2 jmDesktop <needin4mat...@gmail.com>:
I have been to the main python site, but am still confused. *I have
*been using .net, so it may be obvious how to do this to everyone
*else. *I am aware there are various frameworks (Django, Pylons, etc..),
*but I would like to know how to create web pages without these. *IfI
*have mod_python or fastcgi on apache, where do I start? *I don't have
*clue where to begin to create a web page from scratch in python. *Iam
*sure I will want to access database, etc., all the "normal" stuff, I
*just want to do it myself as opposed to the frameworks, for learning.
*Thank you for any help.
*--
*http://mail.python.org/mailman/listinfo/python-list

--
İ.Bahattin Vidinli
Elk-Elektronik Müh.
-------------------
iletisim bilgileri (Tercih sirasina gore):
skype: bvidinli (sesli gorusme icin,www.skype.com)
msn: bvidi...@iyibirisi.com
yahoo: bvidinli

+90.532.7990607
+90.505.5667711
I agree. Try cherrypy. I was able to write simple issue tracking
system for my project with basic web interface within 2 weeks.
Prior to this I had no web development experience at all. It was
really easy with cherrypy to start.
Jun 27 '08 #8
CM
On May 2, 10:18 am, "andrei.zavi...@gmail.com"
<andrei.zavi...@gmail.comwrote:
On May 2, 10:07 am, bvidinli <bvidi...@gmail.comwrote:
i also asked same question in this list last week.
i foundhttp://www.cherrypy.org/tobe most suitable for me.
it is basic, easy, pure...
it contains its own webserver, very easy to start.
others have many framworks, structures, classes many many..
i wanted a pure web programming system , i found cherrypy.
see you.
2008/5/2 jmDesktop <needin4mat...@gmail.com>:
I have been to the main python site, but am still confused. I have
been using .net, so it may be obvious how to do this to everyone
else. I am aware there are various frameworks (Django, Pylons, etc.),
but I would like to know how to create web pages without these. If I
have mod_python or fastcgi on apache, where do I start? I don't have
clue where to begin to create a web page from scratch in python. I am
sure I will want to access database, etc., all the "normal" stuff, I
just want to do it myself as opposed to the frameworks, for learning.
Thank you for any help.
--
http://mail.python.org/mailman/listinfo/python-list
--
İ.Bahattin Vidinli
Elk-Elektronik Müh.
-------------------
iletisim bilgileri (Tercih sirasina gore):
skype: bvidinli (sesli gorusme icin,www.skype.com)
msn: bvidi...@iyibirisi.com
yahoo: bvidinli
+90.532.7990607
+90.505.5667711

I agree. Try cherrypy. I was able to write simple issue tracking
system for my project with basic web interface within 2 weeks.
Prior to this I had no web development experience at all. It was
really easy with cherrypy to start.

Really? I tried CherryPy for a few minutes--totally 100% new to
web programming--and though I was pleased at the very basic "Hello,
World!" tutorial, I was unable to figure out how to use the more
advanced tutorials that come with the package. Could you suggest
how one could learn? I have experience with Python and GUI app
development, zero on web apps, but want to make widget-having web
apps which uses Python as the logic.

Any tips would be appreciated!

Also, beyond just running a small test web app with the "server"
running on my own computer, what is a basic way to try it out
actually on the web? Thanks!
Jun 27 '08 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

8
by: Richard | last post by:
Just downloaded python for the fun of it. What do I run to begin coding with? Version 2.3.3 When I run the "command line" thing, I get a dos window. Now what? The built in tutor explains...
3
by: Samuel Walters | last post by:
I'm currently considering a position teaching math and possibly programming at a small local magnet school. If I was also teaching programming, I would, of course, be using Python. So, I went...
1
by: mirandacascade | last post by:
Version of python: 2.4 O/S: Win2K I will be writing some python scripts to do some client-side programming that involves socket.py. I expect that I will be making calls to the following...
3
by: dutche | last post by:
Hi, I'm new in Python and I'm learning with "Learning Python" oreilly's book which is very good written and explanatory. Now, that I know a bit of Python, I want to make some simple project, I...
23
by: gord | last post by:
As a complete novice in the study of Python, I am asking myself where this language is superior or better suited than others. For example, all I see in the tutorials are lots of examples of list...
11
by: Mister Newbie | last post by:
I have no programming experience. I want to learn Python so I can make simple, 2D games. Where should I start? Can you recommend a good book? Thank you.
33
by: NicolasG | last post by:
Hi, I want to be a professional python programmer, unfortunately I'm working on technical support and don't have the time/patience to start making projects my self. I tried to apply to some...
8
by: Edward Cormier | last post by:
Which computer books are the best to begin learning Python 2.5 with? I've heard that Learning Python 3rd Edition is a good choice - can anyone give any more advice on this? Thanks.
6
by: cj007541 | last post by:
Hey guys, My names Casey. Im 17 and going to be a senior in high school this year. I have already taken a school class in python and it was a really big help for me as it taught me a lot more then...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.