python采集修改原创_python应用系列教程——python中ftp操作:连接、登录、获取目录,重定向、上传下载,删除更改...
python中ftp操作:
ftp=FTP() #设置变量
ftp.set_debuglevel(2) #打开调试级别2,显示详细信息
ftp.connect(“IP”,”port”) #连接的ftp sever和端口
ftp.login(“user”,”password”)#连接的用户名,密码
print ftp.getwelcome() #打印出欢迎信息
ftp.cmd(“xxx/xxx”) #更改远程目录
bufsize=1024 #设置的缓冲区大小
filename=”filename.txt” #需要下载的文件
file_handle=open(filename,”wb”).write #以写模式在本地打开文件
ftp.retrbinaly(“RETR filename.txt”,file_handle,bufsize) #接收服务器上文件并写入本地文件
ftp.set_debuglevel(0) #关闭调试模式
ftp.quit #退出ftp
ftp相关命令操作
ftp.cwd(pathname) #设置FTP当前操作的路径
ftp.dir() #显示目录下文件信息
ftp.nlst() #获取目录下的文件
ftp.mkd(pathname) #新建远程目录
ftp.pwd() #返回当前所在位置
ftp.rmd(dirname) #删除远程目录
ftp.delete(filename) #删除远程文件
ftp.rename(fromname, toname)#将fromname修改名称为toname。
ftp.storbinaly(“STOR filename.txt”,file_handel,bufsize) #上传目标文件
ftp.retrbinary(“RETR filename.txt”,file_handel,bufsize)#下载FTP文件
前提条件是你已经在当前电脑或远程服务器开通了ftp功能。
这里在本机上调试,目标主机也是本机。ftp信息如下表
主机地址192.168.8.102,端口号使用默认21端口,开启了匿名登录。所以在代码中登陆ftp账号密码为空。
ftp所需要的库已经集成在了python系统中
#coding:utf-8
#ftp演示,首先要在本机或远程服务器开启ftp功能
import sys,os,ftplib,socket
print("=====================FTP客户端=====================");
HOST = '192.168.8.102' #FTP主机
user = "username"
password = "pwd"
buffer_size = 8192
#连接登陆
def connect():
try:
ftp = ftplib.FTP(HOST)
ftp.login()#登录,参数user,password,acct均是可选参数,
#f.login(user="user", passwd="password")
return ftp
except (socket.error,socket.gaierror):
print("FTP登陆失败,请检查主机号、用户名、密码是否正确")
sys.exit(0)
print('已连接到: "%s"' % HOST)
#中断并退出
def disconnect(ftp):
ftp.quit() #FTP.close():单方面的关闭掉连接。FTP.quit():发送QUIT命令给服务器并关闭掉连接
#上传文件
def upload(ftp, filepath):
f = open(filepath, "rb")
file_name = os.path.split(filepath)[-1]
try:
ftp.storbinary('STOR %s'%file_name, f, buffer_size)
print('成功上传文件: "%s"' % file_name)
except ftplib.error_perm:
return False
return True
#下载文件
def download(ftp, filename):
f = open(filename,"wb").write
try:
ftp.retrbinary("RETR %s"%filename, f, buffer_size)
print('成功下载文件: "%s"' % filename)
except ftplib.error_perm:
return False
return True
#获取目录下文件或文件夹想详细信息
def listinfo(ftp):
ftp.dir()
#查找是否存在指定文件
def find(ftp,filename):
ftp_f_list = ftp.nlst() #获取目录下文件、文件夹列表
if filename in ftp_f_list:
return True
else:
return False
def main():
ftp = connect() #连接登陆ftp
dirpath = 'lp' #目录,不能使用lp/lp1这种多级创建,而且要保证你的ftp目录,右键属性不能是只读的
try: ftp.mkd(dirpath) #新建远程目录
except ftplib.error_perm:
print("目录已经存在或无法创建")
try:ftp.cwd(dirpath) #重定向到指定路径
except ftplib.error_perm:
print('不可以进入目录:"%s"' % dirpath)
print(ftp.pwd()) #返回当前所在位置
try: ftp.mkd("dir1") #在当前路径下创建dir1文件夹
except ftplib.error_perm:
print("目录已经存在或无法创建")
upload(ftp,"D:/test.txt") #上传本地文件
filename="test1.txt"
ftp.rename("test.txt", filename) #文件改名
if os.path.exists(filename): #判断本地文件是否存在
os.unlink(filename) #如果存在就删除
download(ftp,filename) #下载ftp文件
listinfo(ftp) #打印目录下每个文件或文件夹的详细信息
files = ftp.nlst() #获取路径下文件或文件夹列表
print(files)
ftp.delete(filename) #删除远程文件
ftp.rmd("dir1") #删除远程目录
ftp.quit() #退出
if __name__ == '__main__':
main()
---------------------
作者:数据架构师
python采集修改原创_python应用系列教程——python中ftp操作:连接、登录、获取目录,重定向、上传下载,删除更改...相关推荐
- Asp.net实现MVC处理文件的上传下载删除功能实例教程
上传于下载功能是程序设计中非常常见的一个功能,在ASP.NET程序开发中有着非常广泛的应用.本文就以实例形式来实现这一功能. 一.概述 如果你仅仅只有Asp.net Web Forms背景转而学习As ...
- python采集修改原创_网站采集利用python洗稿!洗稿人太轻松了!
一直在想怎么能正确高效的处理seo中,采集的文章怎么去伪原创和洗稿.如果是人工操作的话,那就太麻烦了.采集下来的文章不进行伪原创又害怕被飓风算法命中. 1,tr算法提取摘要再人工重组新的文章. 正好今 ...
- python中的gui界面编程_python应用系列教程——python的GUI界面编程Tkinter全解
全栈工程师开发手册 (作者:栾鹏) python的GUI界面编程,常用的几个python库包含如下: Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包 ...
- python如何绘制条形图_python Matplotlib 系列教程(三)——绘制直方图和条形图
在本章节我们将学习如何绘制条形图和直方图 条形图与直方图的区别: 首先,条形图是用条形的长度表示各类别频数的多少,其宽度(表示类别)则是固定的: 直方图是用面积表示各组频数的多少,矩形的高度表示每一组 ...
- python怎么计算总值_python小白系列Day2—python基础以及pandas基础
最近恰逢过年期间,聚会太多,还有论文以及笔者年后的实习培训,时隔几天,笔者终于在第一天更文之后,继续写第二篇了. 打算写这个,主要是想记录自己从0到1的过程,欢迎拍砖. part one 思考部分 笔 ...
- python csv修改文件_Python实例:对CSV文件的操作
来自PythonABC.org 老师的课程很好,但是每个视频都蛮长的,听着听着就有些晕乎,所以根据视频自己整理了一下,以便记录 用Python来实现CSV文件的一些常用操作 请注意:文件路径需要根据实 ...
- python遍历什么意思_Python进阶系列:Python遍历的秘密
前言 可迭代对象,迭代器,生成器,相信许多学习Python的小伙伴或多或少都听说过,但你真的知道他们的区别吗?真的知道为什么需要这些概念吗? 本文带你深入了解一系列相关机制,不仅告诉你概念,还告诉你为 ...
- Python + Paramiko实现sftp文件上传下载
最近在测试服务器那块,看了下Paramiko模块,一直都是用FileZilla工具,想了想,持续集成,更新代码可以用Parmmiko完成,还是不错的 Paramiko是用python语言写的一个模块, ...
- python应用系列教程——python中ftp操作:连接、登录、获取目录,重定向、上传下载,删除更改
全栈工程师开发手册 (作者:栾鹏) python教程全解 python中ftp操作: ftp=FTP() #设置变量 ftp.set_debuglevel(2) #打开调试级别2,显示详细信息 ftp ...
最新文章
- 解决Python通过pip安装报错:(有图)Could not install packages due to an EnvironmentError: HTTPSConnectionPool
- bzoj千题计划237:bzoj1492: [NOI2007]货币兑换Cash
- php5的mysqli函数第二个参数,关于php:我应该将$ mysqli变量传递给每个函数吗?
- 云图说|ASM灰度发布,让服务发布变得更敏捷、更安全
- 第 20 次 CSP认证 202009-4 星际旅行
- Siri在苹果继续活着、蠢着、没落着,现在它最后一个创始人也走了
- python学习手册-Python学习手册(第4版) 中文版.pdf
- 蚂蚁S9矿卡ddr型号确认方法
- 宝鸡市二检理科数学跟踪训练题
- 深信服桌面云-(1)
- 复联4定档 4.24——十一年21部漫威电影,用数据为你梳理口碑、票房、主演最佳...
- 求三阶行列式--学解析几何的朋友计算外积和混合积可以用这个啦--
- Conda的PyTorch安装
- Android修改源码实现root
- python counter函数_Python中的魔法函数——Counter
- 使用Horner法则计算多项式的值
- 心理月刊杂志心理月刊杂志社心理月刊编辑部2022年第11期目录
- 生物信息学基础——基因表达过程
- div+CSS浏览器兼容问题整理(IE6.0、IE7.0 ,ie8 , FireFox...)
- 记录学习Jsoup时第一次创建Maven项目时的报错(No marketplace entries found to handle maven-compiler-plugin:3.1)