首页 > 编程知识 正文

Python 架设网站,免费架设网站服务器

时间:2023-05-05 16:35:51 阅读:250970 作者:1328


   Python开发一个服务器很方便,模块封装的很好。写了个简易网站。

   说一下大体思路。首先,写个5行的服务器启动,默认打开index.html。在首页中作超链接跳转,到脚本上。在脚本中现将数据打包(也可以理解为将数据从库中提取出来),然后写出网页,并设定好表单等元素。用户点击,进入下一个脚本......

 
    整体来说,通常采用MCV架构:
模型(Module):存储(以及有时处理Web应用数据的代码
视图(View):格式化和显示Web应用用户界面的代码
控制器(Controller):将Web应用”粘合“在一起并提供业务逻辑
M 为数据建模
Web服务器需要一个存储数据的副本。当Web应用启动时,需要把文件中的信息读出来。这里是一个打包好的Pickle,也可能是在程序启动时,搜集相应的文件打的包,因为可能要下发到本地。
小例子没使用数据库,使用pickle即可,注意I/O异常检测。
V 查看界面
使用First Head 书中带的yate.py来生成html。估计应该有其他更NB的PiPy。
C 控制代码
推荐采用以下结构:
WebApp:顶层文件夹是程序的名字,除了子文件夹,还包括web应用的index.html文件,图标,样式表等不适合放在其子文件夹中的内容。
cgi-bin:为Web应用写的所有代码需要放在这里。
data:所有数据在这里
image:如果有必要就创建一个这个文件,将图标、图片放在里面
templates:一些套用的模板
构建服务器必须的信息代码:
from http.server import HTTPServer,CGIHTTPRequestHandlerport = 8080httpd = HTTPServer(('',port),CGIHTTPRequestHandler) #创建一个服务器print("Strating simpleHttpd on port: "+str(httpd.server_port))httpd.serve_forever() #弹出提示并启动服务器
    运行这个文件(命令为 python.exe XXX.py),则在访问相应端口时就会启动本层文件中的index.html。如果没有则显示层级文件。所以运行这几行代码就完成了服务器的架设了。
    操作的跳转则在html中做。例如:超链接<a rel="external nofollow" href="cgi-bin/generate_list.py">timing data</a>
    这样就运行相应的脚本了。     访问方式大家都知道了:在浏览器中输入:localhost:8080 就行了。
下面是一些能用到的小知识点:
文件操作:glob
查询一个文件列表:data_fales = glob.glob("../data/*.txt")
网页相关的库:cgi
    获取表单数据:数据将作为一个字典返回
cgi.FieldStorate() athlete_name = form_data['which_athlete'].value
开启调试:使用cgitb可以将崩溃问题显示到网页上。
import cgitb cgitb.enable()
将类方法表现为属性:@property
当类中的方法上用@property修饰时,这个类方法表现为一个属性。即使用"."来直接使用,而不用再加括号。
标准库string中包括一个名为Template的类,它支持简单的字符串替换:
with open('../templates/header.html') as headf:head_text = headf.read()header = Template(head_text)return(header.substitute(title=the_title))

代码 http://download.csdn.net/detail/fansongy/5564213
  本篇博客出自阿修罗道,转载请注明出处:http://blog.csdn.net/fansongy/article/details/9076549


历史中提交的图片或压缩文件

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。