pythonbottle
from尘竖bottleimportBottle,run
app=Bottle()
@app.route('/hello')
defhello():
模扒return"HelloWorld!"
run(app,host='localhost',port=8080)
将 host='localhost'替换为你的本机IP地址派码大试试看
㈡ 怎么配置python得bottle库,让其他的电脑访问呢
同一个局知好域网里查可以直接访问搭源铅的吧,绑定ip和端口的时候 用外网ip 或 0.0.0.0 局域网就能访问了
外网的话,如果是家用宽带比较麻烦,建议买个服务器吧,阿里腾讯的学生机都裂谨很便宜
㈢ 如何终止一个bottle 线程 python
问题描述的不太准确,你指的是python里bottle那个web框架么?通常运行的时候,程序一开始就者做举会提示“Hit CTRL-C to quite”,按照字面上意思,Contrl+C退出就行了。
如果你用了Gunicorn之类的WSGI HTTP服务器来并发Bottle的话,那么把首碧Gunicorn进程结束掉就好了。
如果是用python的multiprocessing弄出来的bottle服务进程,那么在需要结束胡明的地方先.join()。
㈣ python bottle 怎么获得上传的文件
文件上传,需要注意的是前端html的form表单中,要添加 enctype="multipart/form-data"属性,否则无法上传文件。在后端,用request.files方法,获取到表单传上来的文件,首先把对象赋值给一个变量名,如upload,然后用save()的方法来保存到服务器中。upload.save(save_path,overwrite=True),save_path是保存文件的路径,overwrite=True是指如果服务器中已有同名文件存在,则覆盖。
文件上传代码:
[root@linuxyw bottle]# vim main.py
#/usr/bin/env python
#coding=utf-8
from bottle import route, run
from bottle import request
#定义上传路径
save_path = './upload'
#文件上传的HTML模板,这里没有额外去写html模板了,直接写在这里,方便点吧
@route('/upload')
def upload():
return '''
<html>李圆枣
<head>
</head>
<body>
<form action"/upload" method="post" enctype="multipart/form-data">
<input type="file" name="data" />
<input type="submit" value="Upload" />
</form>
</body>
</html>
'''
#文件上传,overwrite=True为覆盖原有的文件,
#如果不加这参数,当服务器已存在同名文件时,将返回“IOError: File exists.”错误
@route('/upload', method = 'POST')
def do_upload():
upload = request.files.get('data')
upload.save(save_path,overwrite=True) #把文件保存到save_path路径下
return 'ok'
run(host='0.0.0.0', port=8080, debug=True)
相关的演示,可自己运行上面代码
此外,上传哪拆的文件对象,还有这二个属性
filename :文件名
content_type :文件类型
如上面的代码,上传文件的时候,要获取文件名,就要用upload.filename, 要获取文件类型就用upload.content_type。这二件很实用,一般要先修改上传的文件名后,再保存到服务器中,content_type则可以检测文件是什么类型的文件,如果符合我们的上传类型,才保存。
@route('/upload', method = 'POST')
def do_upload():
upload = request.files.get('data')
import os.path
name, ext = os.path.splitext(upload.filename) #用os.path.splitext方法把文件名和后缀相分离
upload.filename = ''.join(('123',ext)) #修改文件名
upload.save(save_path,overwrite=True) #把文件保存到save_path路径下
return u'上腔锋传成功 原文件名是:%s 文件后缀名是:%s \n 修改后的文件名是:%s' %(name,ext,''.join(('123',ext)))
用浏览器上传文件banner5_6.jpg后,成功显示:
上传成功 原文件名是:banner5_6 文件后缀名是:.jpg 修改后的文件名是:123.jpg
服务器文件结构:
[root@linuxyw bottle]# tree
.
├── main.py
├── upload
│ ├── 11.png
│ ├── 123.jpg
│ └── 23.png
㈤ 求助,关于Bottle+python运行时错误的问题,详情请进
环境python 3.3.2+bottle 0.11.6+win7 专业版
刚开始学python 和bottle ,用pip安装了bottle,试着写了一个小程序,有一段时间还一切OK,但最近卜纤发现第一次打开的时候很长时间没有反应,重新刷新一次就OK了,但终端出现好多的错误提示。电脑没有其它变化,bottle是用pip安装的。
将debug=True改为False之后依然如故,请各位指点,多谢!
Python code?
1234567
from bottle import route,run @route('/')def hello(): return "Hello World!" run(host='localhost', port=8080, debug=True)
Python code?
5767778
Bottle v0.11.6 server starting up (using WSGIRefServer())...Listening on Hit Ctrl-C to quit. 127.0.0.1 - - [13/Jun/2013 20:26:45] "GET / HTTP/1.1" 200 12127.0.0.1 - - [13/Jun/2013 20:26:45] "GET / HTTP/1.1" 200 12Traceback (most recent call last): File "C:\Python33\lib\wsgiref\handlers.py", line 138, in run self.finish_response() File "C:\Python33\lib\猜悔wsgiref\handlers.py", line 180, in finish_response self.write(data) File "C:\Python33\lib\wsgiref\handlers.py", line 274, in write self.send_headers() File "C:\Python33\lib\wsgiref\handlers.py", line 332, in send_headers self.send_preamble() File "C:\Python33\lib\wsgiref\handlers.py", line 255, in send_preamble ('Date: %s\r\n' % format_date_time(time.time())).encode('iso-8859-1') File "C:\Python33\lib\wsgiref\handlers.py", line 453, in _write self.stdout.write(data) File "C:\Python33\lib\socket.py", line 317, in write return self._sock.send(b)ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接。127.0.0.1 - - [13/Jun/2013 20:26:45] "GET / HTTP/1.1" 500 59----------------------------------------Exception happened ring processing of request from ('127.0.0.1', 50822)Traceback (most recent call last): File "C:\Python33\lib\wsgiref\handlers.py", line 138, in run self.finish_response() File "C:\型兆仿Python33\lib\wsgiref\handlers.py", line 180, in finish_response self.write(data) File "C:\Python33\lib\wsgiref\handlers.py", line 274, in write self.send_headers() File "C:\Python33\lib\wsgiref\handlers.py", line 332, in send_headers self.send_preamble() File "C:\Python33\lib\wsgiref\handlers.py", line 255, in send_preamble ('Date: %s\r\n' % format_date_time(time.time())).encode('iso-8859-1') File "C:\Python33\lib\wsgiref\handlers.py", line 453, in _write self.stdout.write(data) File "C:\Python33\lib\socket.py", line 317, in write return self._sock.send(b)ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接。 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Python33\lib\wsgiref\handlers.py", line 141, in run self.handle_error() File "C:\Python33\lib\wsgiref\handlers.py", line 368, in handle_error self.finish_response() File "C:\Python33\lib\wsgiref\handlers.py", line 180, in finish_response self.write(data) File "C:\Python33\lib\wsgiref\handlers.py", line 274, in write self.send_headers() File "C:\Python33\lib\wsgiref\handlers.py", line 331, in send_headers if not self.origin_server or self.client_is_modern(): File "C:\Python33\lib\wsgiref\handlers.py", line 344, in client_is_modern return self.environ['SERVER_PROTOCOL'].upper() != 'HTTP/0.9'TypeError: 'NoneType' object is not subscriptable During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Python33\lib\socketserver.py", line 306, in _handle_request_noblock self.process_request(request, client_address) File "C:\Python33\lib\socketserver.py", line 332, in process_request self.finish_request(request, client_address) File "C:\Python33\lib\socketserver.py", line 345, in finish_request self.RequestHandlerClass(request, client_address, self) File "C:\Python33\lib\socketserver.py", line 666, in __init__ self.handle() File "C:\Python33\lib\wsgiref\simple_server.py", line 126, in handle handler.run(self.server.get_app()) File "C:\Python33\lib\wsgiref\handlers.py", line 144, in run self.close() File "C:\Python33\lib\wsgiref\simple_server.py", line 35, in close self.status.split(' ',1)[0], self.bytes_sentAttributeError: 'NoneType' object has no attribute 'split'----------------------------------------
奇怪今天在WinXP下试一试却一切正常,难道是win7的问题?
㈥ pythonbottle浏览器刷新特别慢
pythonbottle浏览槐皮器刷新特别慢是网速慢。pythonbottle浏览器刷新特别慢是网隐信速慢。网线问题、网络设备问题、防火墙使用过铅携差多,都会导致网速慢。
㈦ python 怎么安装bottle
直接枯手接pip install bottle就配虚行培败燃了
㈧ bottle.post()python有什么用
Bottle是手扰一尺衡个超轻量级的python库。陵薯做说是库,其本身只由一个4000行左右的文件构成,并且不需要任何依赖,只靠python标准库即可运作。用post方法实现文件的上传和下载
㈨ 求助,关于Bottle+python运行时错误的问题,详情请进
详细讲讲怎么才能触发你得到的异常。
我这儿允许你的程序没有任何问题慧旁。
from bottle import route,run
@route('/'前慧橡)
def hello():
return "Hello World!"
run(host='localhost', port=8080, debug=True)
如果我的回答没碧前能帮助您,请继续追问。
㈩ 编程语言Python有哪些好的Web框架
1、Django:PythonWeb应用开发框架Django应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响。Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构、以及全功能的管理后台。
2、Bottle:微型PythonWeb框架Bottle是一个简单高效的遵循WSGI的微型pythonWeb框架。说微型,是因为它只有一个文件,除Python标准库外,它不依正并赖于任何第三方模块。
3、Flask:也是一个Web应用框架
不同于Django它是轻量级Web应用框架。基于WerkzeugWSGI工具箱和Jinja2模板引擎。Flask也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。但是Flask是可以扩增的,你可以使用可以用Flask-extension增加前边没有的一些功能。
4、Tornado:异步非阻塞IO的PythonWeb框架Tornado的全称是ToradoWebServer,从名字上看就可知道它可以用作Web服务器,但同时它也是一个PythonWeb的开发框架。最初是在FriendFeed公司的网站上使用,FaceBook收购了之后便开源了出来。Tornado和现在的主流Web服务器框架和大多数Python框架有着明显的区别:它是非阻塞式服务器,而且速度相当快。冲李也是比较常被使用的Python开源框架之一。
Web2py:全栈式Web框架Web2py是一个为Python语言提供的全功能举判迹Web应用框架,旨在敏捷快速的开发Web应用,具有快速、安全以及可移植的数据库驱动的应用,兼容GoogleAppEngine。
webpy:轻量级的PythonWeb框架webpy的设计理念力求精简(Keepitsimpleandpowerful),源码很简短,只提供一个框架所必须的东西,不依赖大量的第三方模块,它没有URL路由、没有模板也没有数据库的访问。