关于服务器,这个是个难弄的东西,一台就需要几十大洋
而服务器的类型有很多种
http,https,tcp,ftp等等
而今天说的就是使用python连接和使用ftp服务器
1.开通ftp服务器
开通局域网ftp服务器的过程就不说了,不知道的看一下开通局域网ftp服务器方法
开通公域网还是要说一下
3vftp官网是个非常好用的公域网ftp开通网站,你只需要注册一个账号,任何按这个方法,就可以永久使用ftp公域网的网站了
2.python连接
连接代码:
import ftplib
ft = ftplib.FTP()
ft.connect("ftp服务器名称", 数字端口:ftp一般是21)
ft.login("用户名,匿名为空", "密码,没有为空")
3.使用服务器
首先要导入一个文件(在同目录下命名为ftp.py)
from ftplib import FTP
import os
temp=os.environ["temp"]
def upload(f, remote_path, local_path):
fp = open(local_path, "rb")
buf_size = 1024
f.storbinary("STOR {}".format(remote_path), fp, buf_size)
fp.close()
def download(f, remote_path, local_path):
fp = open(local_path, "wb")
buf_size = 1024
f.retrbinary('RETR {}'.format(remote_path), fp.write, buf_size)
fp.close()
def quit(f):
f.quit()
def typefile(f,file):
local_path=temp+"/TEMPfile"
fp = open(local_path, "wb")
buf_size = 1024
f.retrbinary('RETR {}'.format(file), fp.write, buf_size)
fp.close()
f=open(local_path,"r",encoding="UTF-8")
get=f.read()
f.close()
os.remove(local_path)
return get
def nlst(ft,cwd=""):
try:
ft.nlst(cwd)
except:
return []
return ft.nlst(cwd)
def DownLoadFileTree(ft, LocalDir, RemoteDir):
def DownLoadFile(ft, LocalFile, RemoteFile): # 下载单个文件
file_handler = open(LocalFile, 'wb')
ft.retrbinary('RETR ' + RemoteFile, file_handler.write)
file_handler.close()
return True
if not os.path.exists(LocalDir):
os.makedirs(LocalDir)
ft.cwd(RemoteDir)
RemoteNames = ft.nlst()
for file in RemoteNames:
Local = os.path.join(LocalDir, file)
if file.find(".") == -1:
if not os.path.exists(Local):
os.makedirs(Local)
DownLoadFileTree(ft,Local, file)
else:
DownLoadFile(ft,Local, file)
ft.cwd("..")
return
让后在你的文件里写下:
import ftplib
import ftp
ft = ftplib.FTP()
ft.connect("ftp服务器名称", 数字端口:ftp一般是21)
ft.login("用户名,匿名为空", "密码,没有为空")
...后续代码
我来讲解一下ftp.py的代码
import ftp
ft = ftplib.FTP()
ft.connect("ftp服务器名称", 数字端口:ftp一般是21)
ft.login("用户名,匿名为空", "密码,没有为空")
upload(f, remote_path, local_path):
#上传文件的函数
#f 写ft(服务器的把柄)
#remote_path 上传到服务器后的路径,比如"/dir/dir/file.txt"
#local_path 要上传的文件路径,比如"C:\users\user\desktop\file.txt"
download(f, remote_path, local_path):
#下载文件
#f 写ft(服务器的把柄)
#remote_path 在服务器里的路径,比如"/dir/dir/file.txt"
#local_path 下载到本地的文件路径,比如"C:\users\user\desktop\file.txt"
quit(f):
#退出连接
#f 写ft(服务器的把柄)
typefile(f,file):
#读取服务器文件但不下载
#f 写ft(服务器的把柄)
#file 在服务器里的路径,比如"/dir/dir/file.txt"
#返回值 文件里的字
nlst(ft,cwd=""):
#获取当前目录的所有文件
#ft 写ft(服务器的把柄)
#cwd 服务器文件夹的位置
DownLoadFileTree(ft, LocalDir, RemoteDir):
#下载一个目录
#ft 写ft(服务器的把柄)
#LocalDir 下载到本地文件夹的位置
#RemoteDir 服务器上的位置
是不是觉得我非常废话,是的,我从小就是话痨
好,这就是今天的全部内容,明天见!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)