我同学在实现这个客户端时总是出现各种问题,而且我看他的代码有些也不懂,主要是因为里面有一个我只是听说还没有用过的模块——telnetlib。 我首先是上网查了一下telnetlib模块,结果发现它是用来处理telnet连接的。telnet连接现在已经用得非常少了,因为它是明文传输,极度不安全!但是拿它做课程设计绰绰有余。 言归正传,我们首先来看一下telnetlib模块到底是什么,这个模块里有哪些东西。首先import telnetlib,然后help(telnetlib)即可,如图所示。 ? 稍微翻译一下NAME下面那句话:telnetlib——TELNET客户端类。然后就是描述和一个例子,这些不用管。直接看例子下面的Note那一段,为了确保连贯性,我把Note那一段和它后面几段放一起。 然后,没有其他操作被telnetlib执行。 ? 方法被定义在这里: __del__(self) 析构器——关闭这个连接。
在 python 中有一个 telnetlib,它的作用就是建立一个通到主机的 telnet连线实体, 然后向主机传送命令 (就像用键盘输入一样 )并从该连线接收数据。 /usr/bin/env python def telnetdo(HOST=None, USER=None, PASS=None, COMMAND=None): #定义一个函数 , 这将要用它会很容易 import telnetlib, sys if not HOST: #如果没有给出所要的资料,则要求用户输入 44 if __name__ == '__main__' #这是 python 常用的技巧:如果 telnetdo.py 程式 python中telnetlib模块的使用 python下能支持telnet的模块telnetlib是内置模块,直接import就可以了,其基本的使用方法也是比较简单的。
领8888元新春采购礼包,抢爆款2核2G云服务器95元/年起,个人开发者加享折上折
今天的分享将提供一种方案由 Python 来实现 dubbo 协议的接口自动化测试。 准备工作: 安装Python3+的运行环境 使用python -m pip install telnetlib安装依赖包 PS:使用依赖包telnetlib是想通过 Python 来模拟 Linux 下对 dubbo 接口调用的命令行操作 Python 实现源码 import json import telnetlib class Dubbo(telnetlib.Telnet): prompt ,它的值将由传入进来的 method_name 取代,一般是传入被调用的方法名称,这里的写法只是为了占位; (4)、() 为 invoke 命令后调用 method_name 方法时需要的格式,类似 Python })".format(service_name,method_name,param_data),需要在 () 里添加占位符,并在调用该方法时传入对应的参数,一般是 key:value 格式的参数,即 Python
方法一: 通过python中的 winrm模块,前提条件,先提前设置好winrm服务。如何设置请自行百度,winRM服务是windows server下PowerShell的远程管理服务。 Python脚本通过连接winRM模块操作windows命令行。 方法二: 通过python中的telnetlib库进行执行操作,前提设置windows系统中的telnet设置,1,安装telnet客户端和服务器端。2配置telnet用户权限,不会就自行百度设置。 # -- coding: utf-8 -- import telnetlib,time def telnetlib_views(ipaddress,user,password,cmdname): tn=telnetlib.Telnet(ipaddress) a=tn.read_until(b'login:') tn.write(user.encode('ascii') + b'\r\n'
使用了 telnetlib 库 1 拓扑 ? 未运行脚本的时候,R4、R5是没有到1.1.1.1和2.2.2.2的路由的: ? ? 配置文档放在跟python脚本同一个目录下: ? 运行python脚本之后: ? ? ? 成功! #conf.py 文件 import time from telnetlib import Telnet def cfg(addr,user,pwd,secret,conf): tn
运行telnetlib的时候报错:TypeError: a bytes-like object is required, not ‘str’,原因是因为python2和python3的版本的差异。 在python2中可正常运行,而python3最重要的新特性也是对文本和二进制数据做了更清晰的区分。文本用unicode编码,为str类型,二进制数据则为bytes类型。 python有两种类型转换的函数encode(),decode() 。 encode(编码),可以将str类型编码为bytes。 decode(译码),可以将bytes类型转换为str类型。 因此在telnetlib交互的时候需要使用encode()。 tn.read_until("username:".encode())
首先python的标准库中包含telnet,用起来也很方便,查看一下文档写了个小程序: #! /usr/bin/env python #coding=utf-8 import telnetlib host = "127.0.0.1" userName = 'root' password = '123456' enter = '\n' t = telnetlib.Telnet(host) t.read_until("login: ",1) t.write(userName + enter ,以此实现与其自动交互的 Python 模块。 参考资料: python文档:http://docs.python.org/library/telnetlib.html IBM developerWorks: http://www.ibm.com/
有段时间想利用python自动批量登录设备,并输入命令。 但是读取设备列表文件遍历后发现telnetlib库的登录不上设备。 /usr/bin/env python import subprocess import telnetlib import time import getpass f = open("list.txt" ("Username:") password = getpass.getpass("Password: ") def telnet(username,password,Host): tn = telnetlib.Telnet
由于工作需要,编写了一个自动检查办公区无线AP是否掉线的python脚本,我这里用的是python3环境,请大家注意 还有要注意的是我这里用的是锐捷的无线AC及无线AP。 /usr/local/python3/bin/python3 import telnetlib,time,os def do_telnet(Host,password,finish,commands) : import telnetlib tn = telnetlib.Telnet(Host, port=23) tn.read_until(b'Password:') tn.write
台机器串行处理就需要1000×10s,差不多三个小时,这是很难受的事情; 之前用thread的start_new_thread方法也可以实现,但是线程数量不好控制,没找到相关的控制线程数量的锁; 找了下关于python threadpool/ 我下的是版本1.2.2: http://chrisarndt.de/projects/threadpool/download/threadpool-1.2.2.tar.bz2 放到当前目录或者python requests: pool.putRequest(req) 第四行是等待所有的线程完成工作后退出; 下面看下我的代码,使用线程池前后代码对比,不使用线程池: import telnetlib import time #执行比较耗时的函数,需要开启多线程 def myTelnet(L): tn = telnetlib.Telnet myTelnet(L[i]) 如果myTelnet每次执行要10s,那么255次myTelnet就需要2550s,大概是40分钟; 用多线程的情况: import telnetlib
使用Python实现Telnet远程登录 by0x0021 2013-03-25 18:06:07 # -*- coding: utf-8 -*- import telnetlib ' # 登录用户名 password = '123456' # 登录密码 finish = ':~$ ' # 命令提示符(标识着上一条命令已执行完毕) # 连接Telnet服务器 tn = telnetlib.Telnet
本实验使用了telnetlib 库 一、拓扑 ? 二、环境 Python 2、Cisco-Router、Kali-Linux 三、配置 !! 3.2、Python 备份脚本 #backup.py import time from telnetlib import Telnet def tel(addr,user,pwd,secret):
但是手动操作比较麻烦,需要使用python登录网关设备,检测是否正常。 官方文档,请参考: https://docs.python.org/zh-cn/3/library/telnetlib.html 三、检测脚本 check_gateway.py #! /usr/bin/env python3 # coding: utf-8 import telnetlib import time class TelnetClient(object): def __init__(self, ip, user, pswd): self.tn = telnetlib.Telnet() self.host_ip = ip 执行脚本 # python3 check_gateway.py 10.212.82.90 登录成功 正常,ip: 10.212.82.90 设备正常 本文参考链接: https://blog.csdn.net
最近在学习Python网络相关编程,这个代码实现了Telnet自动连接检测root用户密码,密码取自密码本,一个一个检测密码是否匹配,直到匹配成功,屏幕输出停止。 Python内置了telnetlib模块,支持telnet远程操作,只要直接import就可以。 代码如下: # encoding=utf-8 import telnetlib import time import sys import os def do_telnet(Host, Port, telnetlib提供好多方法可以得到数据,象read_until()是当结果中存在想要的信息时返回,read_some()是只要有结果就返回,read_very_lazy()是返回缓冲区中的数据。 经过看代码,telnetlib采用缓冲的处理方式,因此数据并不是一下子就返回的,而是先放在了缓冲区中。许多的读取处理都是围绕着这个缓冲区来的。
那我们是否能通过Python编写代码实现呢?类似于NMAP的功能。 输出结果如下: ---- 2.telnetlib方法 接下来我们参考Dahlhin大神的文章,补充Python内置模块telnetlib,它同样可以完成端口检测任务。 import telnetlib import threading import queue #IP端口开发检测 def get_ip_status(ip): server = telnetlib.Telnet 这里引入Queue模块解决该问题(Python3引入库为queue,Python2为Queue)。 《安全之路Web渗透技术及实战案例解析》陈老师 《Python绝技运用Python成为黑客》Connor老师 https://www.bilibili.com/video/av29479068 https
/usr/bin/env python import telnetlib import time def h3c_telnet(ip,username,password1,password2,type) : try: tn = telnetlib.Telnet(ip,timeout=5) time.sleep(1) tn.write(username + '\r\n') tn.read_until
利用python多线程的性质,写了一个扫描目标主机开放端口的程序 程序功能: 输入目标ip地址,程序执行扫描,讲扫描到的端口,存入test.tst文件 附上代码: import telnetlib import threading def get_port(ip, port): server = telnetlib.Telnet() try: server.open
第一步,先用不用代理的方式从西刺代理抓几个可用的IP,用Python的telnetlib库对其进行验证,将可用且速度够快的IP存入Redis和一个txt文件: import redis import telnetlib 10].get_text() ip_address = 'http://' + ip + ':' + port try: telnetlib.Telnet 用requests再验证下(用request是验证telnetlib),发现还是有的能用,有的不能用: import requests proxy = {'http':'120.27.131.204: 用requests方法取代第一步中的telnetlib: import redis import urllib.request from bs4 import BeautifulSoup import
文章目录 一.Python多线程 二.编程实现ping扫描 三.检测IP存活地址 四.编程实现端口扫描器 五.多线程+Queue实现C段扫描 ---- 一.Python多线程 1.进程和线程 进程:是程序的一次执行 那我们是否能通过Python编写代码实现呢?类似于NMAP的功能。 输出结果如下: ---- 2.telnetlib方法 接下来我们参考Dahlhin大神的文章,补充Python内置模块telnetlib,它同样可以完成端口检测任务。 import telnetlib import threading import queue #IP端口开发检测 def get_ip_status(ip): server = telnetlib.Telnet 这里引入Queue模块解决该问题(Python3引入库为queue,Python2为Queue)。
这个专题主要是一些日常用到的Python程序,不定期更新~~ 备份原理 首先读取txt文档中的ip地址 然后循环地址,通过是我提出函数来获取配置信息 然后判断有没相应路径,没有则新建 最后保存在文件中 脚本内容 __author__ = '42274' #encoding=utf-8 import telnetlib import time import datetime import os def switch(hostname,username,password1,password2,cmd1,cmd2): tn = telnetlib.Telnet(hostname,timeout=10
Serverless HTTP 基于腾讯云 API 网关平台,为互联网业务提供 0 配置、高可用、弹性扩展的对外 RESTful API 能力,支持 swagger/ openAPI 等协议。便于客户快速上线业务逻辑,通过规范的 API 支持内外系统的集成和连接。
扫码关注腾讯云开发者
领取腾讯云代金券