當前位置:首頁 » 文件傳輸 » 爬取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, 「錯誤」)
.如果結束