python,如何下载FTP上的文件 python的requests模块下载文件
python,如何下载FTP上的文件
通过python下载FTP上的文件夹的实现代码:
# -*- encoding: utf8 -*-
import os
import sys
import ftplib
class FTPSync(object):
def __init__(self):
self.conn = ftplib.FTP(10.22.33.46, user, pass)
self.conn.cwd(/) # 远端FTP目录
os.chdir(/data/) # 本地下载目录
def get_dirs_files(self):
u 得到当前目录和文件, 放入dir_res列表
dir_res = []
self.conn.dir(., dir_res.append)
files = [f.split(None, 8)[-1] for f in dir_res if f.startswith(-)]
dirs = [f.split(None, 8)[-1] for f in dir_res if f.startswith(d)]
return (files, dirs)
def walk(self, next_dir):
print Walking to, next_dir
self.conn.cwd(next_dir)
try:
os.mkdir(next_dir)
except OSError:
pass
os.chdir(next_dir)
ftp_curr_dir = self.conn.pwd()
local_curr_dir = os.getcwd()
files, dirs = self.get_dirs_files()
print "FILES: ", files
print "DIRS: ", dirs
for f in files:
print next_dir, :, f
outf = open(f, wb)
try:
self.conn.retrbinary(RETR %s % f, outf.write)
finally:
outf.close()
for d in dirs:
os.chdir(local_curr_dir)
self.conn.cwd(ftp_curr_dir)
self.walk(d)
def run(self):
self.walk(.)
def main():
f = FTPSync()
f.run()
if __name__ == __main__:
main()
python的requests模块下载文件
import requests  
res = requests.get(http://www.xx.xx/xxxx/xx.dat)  
res.raise_for_status()  
newfile = open(/home/xx/xx.dat, wb)  # 本地文件  
for chunk in res.iter_content(10240):    
    newfile.write(chunk)  
newfile.close()
如何在python3中安装flask
看看本机pip安装了没有。 (推荐安装最新的3.5,自带pip)
如果安装了则在命令行内输入
pip install flask
如果没有。
首先安装easy_install下载地址:https://pypi.python.org/pypi/ez_setup解压,安装.
python ez_setup.py
安装好easy_install 之后 再安装pip下载地址:https://pypi.python.org/pypi/pip解压,安装.
python setup.py install
之后要安装的包就直接
pip install flask
python 命令行怎样安装flask
哪个Linux发行版啊?各个版本都有自家的程序管理工具啊,ubuntu可以试试命令行里输入sudo apt-get remove python,不过很多程序是依赖python的,卸载了会一并卸载掉。
如何部署简单python flask应用
所需工具:
python3.flask
nginx
gunicorn
supervisor
系统环境:
Ubuntu 14.04LTS
我们先写一个最基本的flask应用:
demo.py
from flask import Flask
app = Flask(**name**)
@app.route()
def index():
return Hello World.
if __name__ == __main__:
app.run()
运行这个py文件,打开浏览器访问127.0.0.1:5000就能看到显示Hello World的页面 .
如果让这个flask引用监听来自公网ip的请求,理论上你跑此程序的机器就相当于一个服务器了,然而这个服务器并不完美,所以我们需要nginx和gunicorn来增加它的功能,让它真刀真枪上生产环境的时候能按要求运行。
flask自带的WSGI框架性能很差劲,只能适用于开发环境调试使用。我们用专业一点的gunicorn(还有很多其他优秀的框架)替代flask自带的WSGI框架。
配置完后,通过命令’/usr/local/bin/gunicorn -b127.0.0.1:5000‘启动应用。打开浏览器访问127.0.0.1:5000,同样能够得到返回页面
然而gunicorn也仅仅是一个python的WSGI框架而已,要让它真正处理来自互联网的各类访问功能还是有点欠缺,这时候就需要用到大名鼎鼎的nginx 服务器来替gunicorn遮风挡雨了。
Ubuntu下安装nginx可以用命令
sudo apt-get install nginx
安装后需要进行下配置:
cd /etc/nginx/sites-available
sudo vi test (test为配置名称,可以根据自己项目进行命名)
test文件的配置为:
server {
listen 80 # 监听80端口
location / {
proxy_pass http://127.0.0.1:5000 # 代理本机127.0.0.1:5000的服务
}
location /static {
alias /home/ubuntu/myproject/myblog/app/static # 负载均衡
}
}
cd ..
cd sites-enable
sudo ln -s ../sites-available/lwhile . (创建软链接,别漏掉最后的.)
sudo service nginx reload
sudo service nginx restart
这样nginx的基本配置文件就写好了 接下来我们配置进程管理工具supervisor supervisor可以在后面启动你的python进程,这样很方便
1.cd /etc/supervisor/conf.d
2.sudo vi test.conf (test为文件名)
[program:test]
command = /usr/local/bin/gunicorn -b127.0.0.1:5000 /home/ubuntu/myproject/test.py
3.sudo supervisorctl
4.reload
5.start test
如果一切正常,做完这所有步骤之后,现在公网的ip访问你的主机,就可以打开你的flask应用了
python3.x怎么安装flask
Windows下Flask安装
1.运行好虚拟环境
2.在虚拟环境下运行pip install flask就可以在想你环境中安装Flask及其依赖了,可以在输入python命令转到python编辑环境,再输入import flask查看是否安装成功。
3.在Scripts同级目录新建一个文件夹,然后里面新建一个hello.py文件,代码内容为:
from flask import Flask
app=Flask(__name__)
@app.route(/)
def hello_world():
return "Hello World"
if __name__ == __main__:
app.run() 1234567123456
然后切换到该文件的目录下,运行python hello.py命令就可以了。然后又用网站访问127.0.0.1:5000
4.Ubuntu下Flask安装:
1.安装virtualenv,为每一个pyhton应用都“安装”一个独立的Python环境;
sudo apt-get install python-virtualenv 或 sudo easy_install virtualenv
2.为你的应用创建一个目录:
mkdir myproject
cd myproject121
3.为应用创建一个单独的开发环境:
virtualenv env //创建一个名为env的目录,这个目录就是一个独立的python环境
. env/bin/activate //激活名为env的环境,注意”.”点后面有关空格;
4.在激活的前提下,安装flask
apt-get install python-flask1
然后写一个最小的基于flask的应用:
cd env
vi hello.py121from flask import Flask
app = Flask(__name__)
@app.route(/)
def hello_world():
return Hello World!
if __name__ == __main__:
app.run() 12345678912345678
然后执行:sudo python hello.py
出现提示:
* Running on http://127.0.0.1:5000/ (Press CTRL C to quit)
在浏览器访问http://127.0.0.1:5000/,可以看到Hello World!