首页 >

怎么用Python写一个网页程序,上传文件,处理完毕,下载下来? |百度语音python模块下载

python 文件读写,eclipse python 高亮,python读取文件第二行,python廖健风,安全为什么用python,python getrequesturl,python+++span,python cipher加密,怎么在python,python-2.7.9,百度语音python模块下载怎么用Python写一个网页程序,上传文件,处理完毕,下载下来? |百度语音python模块下载

1、服务器接口

importflask,os,sys,time

fromflaskimportrequest,send_from_directory

interface_path=os.path.dirname(__file__)

sys.path.insert(0,interface_path)#将当前文件的父目录加入临时系统变量

server=flask.Flask(__name__)

#get方法:指定目录下载文件

@server.route(‘/download’,methods=[‘get’])

defdownload():

fpath=request.values.get(‘path’,”)#获取文件路径

fname=request.values.get(‘filename’,”)#获取文件名

iffname.strip()andfpath.strip():

print(fname,fpath)

ifos.path.isfile(os.path.join(fpath,fname))andos.path.isdir(fpath):

returnsend_from_directory(fpath,fname,as_attachment=True)#返回要下载的文件内容给客户端

else:

return'{“msg”:”参数不正确”}’

else:

return'{“msg”:”请输入参数”}’

#get方法:查询当前路径下的所有文件

@server.route(‘/getfiles’,methods=[‘get’])

defgetfiles():

fpath=request.values.get(‘fpath’,”)#获取用户输入的目录

print(fpath)

ifos.path.isdir(fpath):

filelist=os.listdir(fpath)

files=[fileforfileinfilelistifos.path.isfile(os.path.join(fpath,file))]

return'{“files”:”%s”}’%files

#post方法:上传文件的

@server.route(‘/upload’,methods=[‘post’])

defupload():

fname=request.files.get(‘file’)#获取上传的文件

iffname:

t=time.strftime(‘%Y%m%d%H%M%S’)

new_fname=r’upload/’+t+fname.filename

fname.save(new_fname)#保存文件到指定路径

return'{“code”:”ok”}’

else:

return'{“msg”:”请上传文件!”}’

server.run(port=8000,debug=True)

2、客户端请求

importrequests

importos

#上传文件到服务器

file={‘file’:open(‘hello.txt’,’rb’)}

r=requests.post(‘http://127.0.0.1:8000/upload’,files=file)

print(r.text)

#查询fpath下的所有文件

r1=requests.get(‘http://127.0.0.1:8000/getfiles’,data={‘fpath’:r’download/’})

print(r1.text)

#下载服务器download目录下的指定文件

r2=requests.get(‘http://127.0.0.1:8000/download’,data={‘filename’:’hello_upload.txt’,’path’:r’upload/’})

file=r2.text#获取文件内容

basepath=os.path.join(os.path.dirname(__file__),r’download/’)

withopen(os.path.join(basepath,’hello_download.txt’),’w’,encoding=’utf-8′)asf:#保存文件

f.write(file)


怎么用Python写一个网页程序,上传文件,处理完毕,下载下来? |百度语音python模块下载
  • jQuery统计上传文件大小办法【jquery】
  • jQuery统计上传文件大小办法【jquery】 | jQuery统计上传文件大小办法【jquery】 ...

    怎么用Python写一个网页程序,上传文件,处理完毕,下载下来? |百度语音python模块下载
  • is_uploaded_file函数引发的不能上传文件问题【PHP】
  • is_uploaded_file函数引发的不能上传文件问题【PHP】 | is_uploaded_file函数引发的不能上传文件问题【PHP】 ...

    怎么用Python写一个网页程序,上传文件,处理完毕,下载下来? |百度语音python模块下载
  • PHP实现上传文件并存进数据库办法【PHP】
  • PHP实现上传文件并存进数据库办法【PHP】 | PHP实现上传文件并存进数据库办法【PHP】 ...