当前位置:首页 » 文件传输 » 爬取ftp服务器文件
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

爬取ftp服务器文件

发布时间: 2023-06-29 19:29:08

‘壹’ 批处理复制文件到ftp服务器

将以下内容复制到文本当中,修改ftp的地址、用户、密码、端口保存,然后将格式修改成cmd或bat,双击运行即可。
@echo off
rem ftp地址
set ftpAddr=192.168.1.20
rem ftp用户
set ftpUser=upload
rem ftp密码
set ftpPwd=123456
rem ftp端口
set ftpPort=21
:input
set /p file=输入文件或将文件拖至本窗口:
if not exist %file% echo 文件不存在 && goto input
echo open %ftpAddr% %ftpPort%>openFtp.txt
echo %ftpUser%>>openFtp.txt
echo %ftpPwd%>>openFtp.txt
echo put %var%>>openFtp.txt
echo bye>>openFtp.txt
ftp -s:openFtp.txt
del openFtp.txt
pause

‘贰’ 用java怎么获取ftp上的文件

public class FtpClientUtil {
FtpClient ftpClient;
private String server;
private int port;
private String userName;
private String userPassword;

public FtpClientUtil(String server,int port,String userName,String userPassword)
{
this.server=server;
this.port=port;
this.userName=userName;
this.userPassword=userPassword;
}
/**
* 链接到服务器
* @return
*/
public boolean open()
{
if(ftpClient!=null&&ftpClient.serverIsOpen())
return true;
try
{
ftpClient= new FtpClient();
ftpClient.openServer(server,port);
ftpClient.login(userName, userPassword);
ftpClient.binary();
return true;
}
catch(Exception e)
{
e.printStackTrace();
ftpClient=null;
return false;
}
}

public boolean cd(String dir){
boolean f = false;
try {
ftpClient.cd(dir);
} catch (IOException e) {
Logs.error(e.toString());
return f;
}
return true;
}

/**
* 上传文件到FTP服务器
* @param localPathAndFileName 本地文件目录和文件名
* @param ftpFileName 上传后的文件名
* @param ftpDirectory FTP目录如:/path1/pathb2/,如果目录不存在回自动创建目录
* @throws Exception
*/
public boolean upload(String localDirectoryAndFileName,String ftpFileName,String ftpDirectory)throws Exception {
if(!open())
return false;
FileInputStream is=null;
TelnetOutputStream os=null;
try
{
char ch = ' ';
if (ftpDirectory.length() > 0)
ch = ftpDirectory.charAt(ftpDirectory.length() - 1);
for (; ch == '/' || ch == '\\'; ch = ftpDirectory.charAt(ftpDirectory.length() - 1))
ftpDirectory = ftpDirectory.substring(0, ftpDirectory.length() - 1);

int slashIndex = ftpDirectory.indexOf(47);
int backslashIndex = ftpDirectory.indexOf(92);
int index = slashIndex;
String dirall = ftpDirectory;
if (backslashIndex != -1 && (index == -1 || index > backslashIndex))
index = backslashIndex;
String directory = "";
while (index != -1) {
if (index > 0) {
String dir = dirall.substring(0, index);
directory = directory + "/" + dir;
ftpClient.sendServer("XMKD " + directory + "\r\n");
ftpClient.readServerResponse();
}
dirall = dirall.substring(index + 1);
slashIndex = dirall.indexOf(47);
backslashIndex = dirall.indexOf(92);
index = slashIndex;
if (backslashIndex != -1 && (index == -1 || index > backslashIndex))
index = backslashIndex;
}
ftpClient.sendServer("XMKD " + ftpDirectory + "\r\n");
ftpClient.readServerResponse();

os = ftpClient.put(ftpDirectory + "/"
+ ftpFileName);
File file_in = new File(localDirectoryAndFileName);
is = new FileInputStream(file_in);
byte bytes[] = new byte[1024];
int i;
while ((i = is.read(bytes)) != -1)
os.write(bytes, 0, i);
//清理垃圾

return true;
}
catch(Exception e)
{
e.printStackTrace();
return false;
}
finally
{
if (is != null)
is.close();
if (os != null)
os.close();
}
}
/**
* 从FTP服务器上下载文件并返回下载文件长度
* @param ftpDirectoryAndFileName
* @param localDirectoryAndFileName
* @return
* @throws Exception
*/
public long download(String ftpDirectoryAndFileName,String localDirectoryAndFileName)throws Exception
{
long result = 0;
if(!open())
return result;
TelnetInputStream is = null;
FileOutputStream os = null;
try
{
is = ftpClient.get(ftpDirectoryAndFileName);
java.io.File outfile = new java.io.File(localDirectoryAndFileName);
os = new FileOutputStream(outfile);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1)
{
os.write(bytes, 0, c);
result = result + c;
}
}
catch (Exception e)
{
throw e;
}
finally
{
if (is != null)
is.close();
if (os != null)
os.close();

}
return result;
}
/**
* 返回FTP目录下的文件列表
* @param ftpDirectory
* @return
*/
public List<String> getFileNameList(String ftpDirectory)
{
List<String> list = new ArrayList<String>();
if(!open())
return list;
try
{
DataInputStream dis = new DataInputStream(ftpClient.nameList(ftpDirectory));
String filename = "";
while((filename=dis.readLine())!=null)
{
list.add(filename);
}
} catch (Exception e)
{
e.printStackTrace();
}
return list;
}
/**
* 删除FTP上的文件
* @param ftpDirAndFileName
*/
public boolean deleteFile(String ftpDirAndFileName)
{
if(!open())
return false;
ftpClient.sendServer("DELE "+ftpDirAndFileName+"\r\n");
return true;
}
/**
* 删除FTP目录
* @param ftpDirectory
*/
public boolean deleteDirectory(String ftpDirectory)
{
if(!open())
return false;
ftpClient.sendServer("XRMD "+ftpDirectory+"\r\n");
return true;
}
/**
* 关闭链接
*/
public void close()
{
try
{
if(ftpClient!=null&&ftpClient.serverIsOpen())
ftpClient.closeServer();
}catch(Exception e)
{

}
}
}望采纳,谢谢。

‘叁’ ftp服务器登录软件,有哪些比较好用的

你说的应该是登录FTP服务器的客户端软件吧,这个就非常多啦,既有免费的,也有付费的,这里分享3个非常不错的FTP客户端软件,分别是FileZilla、CuteFTP和FlashFXP,对于登录FTP服务器和上传下载文件来说,非常方便,下面我简单介绍一下这3个软件的安装和使用,感兴趣去的朋友可以尝试一下:

FileZilla

这是一个免费、开源、跨平台的FTP客户端软件,稳定可靠、易于使用,目前支持FTP,FTPS,SFTP等多种文件传输协议,除此之外,还支持书签、拖拽、断点续传、文件过滤、远程编辑等功能,可以很方便的登录和管理FTP服务器,下面我简单介绍一下这个软件:

1.首先,安装FileZilla,这个直接到FileZilla官网上下载就行,如下,各个平台的版本都有,选择适合自己平台的即可:

2.安装完成后,打开这个软件,直接输入FTP服务器地址、用户名和密码,验证成功后就可以正常登录FTP服务器了,效果如下者缺,左边为本机文件,右边为FTP服务器文件,可以直接拖拽互传:

CuteFTP

这是一款轻巧灵活的FTP客户端软件(非免费),在业界非常受欢迎,运行稳定、传输速度快,目前支持FTP、SFTP、HTTP、HTTPS等多种传输首中辩协议,除此之外,还支持智能覆盖、自动排程、目录同步等高级功能,对于登录和管理FTP服务器来说,非常方便实用,下面我简单介绍一下这个软件:

1.首先,安装CuteFTP,这个也直接到CuteFTP官网上下载就行,如下,大概也就20M左右:

2.安装完成后,打开这个软件,输入主机IP、用户名、密码和端口,验证成功后就可以直接登录FTP服务器了,效果如下,左边为本机文件列表,右边为FTP服务器文件列表,拖拽即可实现文件的上传和下载:

FlashFXP

这是一款功能强大的FXP/FTP客户端软件(非免费),基本功能和使用方式与前面2个FTP软件相差不多,可以像CuteFTP一样比较文件夹,也可以像BpFTP一样缓存文件夹,支持断点续传、文件过滤、显示或隐藏文件等功能,培灶对于登录和管理FTP服务器来说,也是一个不错的选择,下面我简单介绍一下这个软件:

1.首先,安装FlashFXP,这个也直接到FlashFXP官网上下载就行,如下,大概也就8M左右:

2.安装完成后,打开这个软件,新建一个Connect连接,输入FTP服务器地址、用户名和密码,验证成功后就可以直接登录FTP服务器了,效果如下,左边为本地文件,右边为FTP服务器文件,拖拽可实现互传:

目前,就分享这3个不错的FTP客户端软件吧,对于日常登录和管理FTP服务器来说,完全够用了,只要你熟悉一下环境,很快就能掌握的,当然,还有许多其他FTP客户端软件,像WinSCP、LeapFTP等也都非常不错,选择适合自己的一款就行,网上也有相关教程,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

‘肆’ 如何进行FTP文件的搜索

FTP文件服务器由一些组织结构为内部方柏霓而搭建的,如医院,学校、政府等,相当于集团的云端一样,实时的进行数据共享,发图片文件服务器会消耗很大的宽带资源,占用较大的网速,而且不盈利,在非公益组织的ftp是不允许他人登陆的,所以一般市面上并不常见。

通过远程连接ftp即可连接登陆,然后就能够下载所需文件了,但是要知道局域网的ip,登陆可能还需要账号及密码,使用服务器管理工具即可登陆连接,既方便,又快捷。

‘伍’ 如何用浏览器直接打开ftp服务器上面pdf文件,不用下载。

推荐一个解决此问题的插件,实现你的pdf文档在线预览功能,是要在网页中使用一个js的插件。你网络一下“pdf文档在线预览功能”,因里面有网址,我之前回答的答案被封。

‘陆’ 怎么从FTP上下载东西

其实我建议使用一个专门的ftp客户端来使用ftp比较好,这样你只需要在客户端上输入ftp服务器的IP和端口,账号,密码,就能轻松的上传和下载文件,非常实用。

这里我推荐使用IIS7服务器管理工具,它可以作为FTP的客户端,想要进行FTP的上传下载操作,只需要下载安装iis7服务器管理工具就可以了!免费下载,很方便。

同时它还可以作为VNC的客户端,进行VNC的相应操作!它能够连接Windows和Linux系统下的服务器和VPS,能满足你不同系统的使用,感觉不错的话可以试试

‘柒’ 易语言读取FTP指定目录里的txt文件名到列表框

.版本 2
.支持库 internet
.子程序 _列表框1_双击选择
.如果 (连接FTP服务器 (FTP, USR, PAS, , ))
FTP置现行目录 () ' 设为你指定的目录
.如果 (FTP文件下载 (列表框1.取项目文本 (列表框1.现行选中项), “.\temp.txt”, ))
编辑框1.内容 = 到文本 (读入文件 (“.\temp.txt”))
.否则
信息框 (“FTP文件下载失败”, 16, “错误”)
.如果结束
断开FTP服务器 ()
.否则
信息框 (“连接FTP服务器失败”, 16, “错误”)
.如果结束

.子程序 _按钮1_被单击
.局部变量 文件列表, 文本型, , "0"
.局部变量 cnt, 整数型
.局部变量 tmp, 整数型
.如果 (连接FTP服务器 (FTP, USR, PAS, , ))
FTP置现行目录 () ' 设为你指定的目录
cnt = FTP目录列表 (“*.txt”, , 文件列表, , , )
列表框1.清空 ()
.计次循环首 (cnt, tmp)
列表框1.加入项目 (文件列表 [tmp], )
处理事件 ()
.计次循环尾 ()
断开FTP服务器 ()
.否则
信息框 (“连接FTP服务器失败”, 16, “错误”)
.如果结束