
- Python - 網路程式設計
- Python - 網路入門
- Python - 網路環境
- Python - 網際網路協議
- Python - IP 地址
- Python - DNS 查詢
- Python - 路由
- Python - HTTP 請求
- Python - HTTP 響應
- Python - HTTP 頭部
- Python - 自定義 HTTP 請求
- Python - 請求狀態碼
- Python - HTTP 認證
- Python - HTTP 資料下載
- Python - 連線重用
- Python - 網路介面
- Python - 套接字程式設計
- Python - HTTP 客戶端
- Python - HTTP 伺服器
- Python - 構建 URL
- Python - Web 表單提交
- Python - 資料庫和 SQL
- Python - Telnet
- Python - 郵件訊息
- Python - SMTP
- Python - POP3
- Python - IMAP
- Python - SSH
- Python - FTP
- Python - SFTP
- Python - Web 伺服器
- Python - 上傳資料
- Python - 代理伺服器
- Python - 目錄列表
- Python - 遠端過程呼叫
- Python - RPC JSON 伺服器
- Python - 谷歌地圖
- Python - RSS Feed
Python - Telnet
Telnet 是一種網路協議,允許一臺計算機上的使用者登入到另一臺也屬於同一網路的計算機。telnet 命令與主機名一起使用,然後輸入使用者憑據。登入成功後,遠端使用者可以像系統常規使用者一樣訪問應用程式和資料。當然,系統管理員可以控制某些許可權,管理員設定並維護系統。
在 Python 中,Telnet 由 telnetlib 模組實現,該模組具有 Telnet 類,該類具有建立連線所需的方法。在下面的示例中,我們還使用 getpass 模組來處理登入過程的一部分的密碼提示。此外,我們假設連線到的是 Unix 主機。程式中使用的 telnetlib.Telnet 類的各種方法解釋如下。
Telnet.read_until - 讀取直到遇到給定的字串 expected,或者直到超時秒數過去。
Telnet.write - 將字串寫入套接字,將任何 IAC 字元加倍。如果連線被阻塞,這可能會阻塞。如果連線關閉,可能會引發 socket.error。
Telnet.read_all() - 讀取所有資料直到 EOF;阻塞直到連線關閉。
示例
import getpass import telnetlib HOST = "https://:8000/" user = raw_input("Enter your remote account: ") password = getpass.getpass() tn = telnetlib.Telnet(HOST) tn.read_until("login: ") tn.write(user + "\n") if password: tn.read_until("Password: ") tn.write(password + "\n") tn.write("ls\n") tn.write("exit\n") print tn.read_all()
執行上述程式時,將獲得以下輸出:
- lrwxrwxrwx 1 0 0 1 Nov 13 2012 ftp -> . - lrwxrwxrwx 1 0 0 3 Nov 13 2012 mirror -> pub - drwxr-xr-x 23 0 0 4096 Nov 27 2017 pub - drwxr-sr-x 88 0 450 4096 May 04 19:30 site - drwxr-xr-x 9 0 0 4096 Jan 23 2014 vol
請注意,此輸出特定於在執行程式時提交的遠端計算機的詳細資訊。
廣告