Python脚本连接ROS脚本

说明:

以下均为实际遇到过的需求,如有其他需求,可在官网查看写法
或自行Google routeos api,有不懂或者有问题,可私信沟通
此脚本为连接ROS,并执行命令,这里只用到了ping命令,还有其他写法
如:
  1. api.get_resource(“/tool”).call(“traceroute”, {“src-address”: “源地址”, “routing-table”: “指定路由” , “address”: “对端地址”, “count”: “1”})
    不需要的字段可以直接backspace掉

  2. api.get_resource(‘/tool’).call(“fetch”, {“address”: “地址”, “upload”: “yes”, “user”: “FTP账号”,“password”: “FTP密码”, “src-path”: “文件名”,“port”: “21”, “mode”: “ftp”, “dst-path”: “文件名”, “keep-result”: “yes”})
    将文件上传至各平台搭建的FTP服务器

  3. api.get_resource(‘/’).call(“export”, {“file”: ‘文件名’})
    输出配置到文件

  4. api.get_resource(‘/file’).call((“print”))
    获取ROS中保存的所有文件

  5. 以下代码块为获取所有文件,删除指定文件

all_file = api.get_resource('/file').call(("print"))    # 输出ROS所有文件
file_id = []
for i in all_file:if i["name"] == '文件名':file_id.append(i["id"])
conf_id = "".join(file_id)
del_conf_file = api.get_resource("/file")
del_conf_file.remove(id=conf_id)     # 删除文件,通过文件id定位文件
  1. 完整的ping代码如下,可直接替换参数使用(需自行添加空余参数),注意需要在ROS放开api
import routeros_api
import osip = ''
username = ''
passwd = ''# 封装过的登录ROS认证api函数,可直接copy
def log_in(ip, username, passwd):connection = routeros_api.RouterOsApiPool(ip,username=username,password=passwd,port=8728,plaintext_login=True,ssl_verify_hostname=False)api = connection.get_api()return api# 封装过的带认证输入命令的函数,可直接copy
def return_ping(api):result = api.get_resource("").call("ping", { "address": "", "count": "5", "interval": "1"})return resultif __name__ == '__main__':api = log_in(ip, username, passwd)result = return_ping(api)ip = result[0]["host"]time_list = []for i in result:try:time_list.append(int(i['time'].replace('ms','')))except:time_list.append(0)time = max(time_list)# time为ping命令的返回值,为ping5次的最大延时# 有需要可以自行print返回值,获取自己想要的结果

Python连接ROS相关推荐

  1. python链接mysql 判断是否成功_【初学python】使用python连接mysql数据查询结果并显示...

    因为测试工作经常需要与后台数据库进行数据比较和统计,所以采用python编写连接数据库脚本方便测试,提高工作效率,脚本如下(python连接mysql需要引入第三方库MySQLdb,百度下载安装) # ...

  2. python连接oracle数据库_Python连接oracle数据库 例子一

    step1:下载cx_Oracle模块,cmd--pip install cx_Oracle step2: 1 import cx_Oracle #引用模块cx_Oracle 2 conn=cx_Or ...

  3. 简单介绍python连接telnet和ssh的两种方式

    本文主要介绍了python连接telnet和ssh的两种方式,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 Telnet 连接方式 #!/usr/bin/env p ...

  4. python连接MySQL并进行数据查询

    python连接MySQL并进行数据查询 #建立数据库的连接 mydb = mysql.connector.connect(host="0.0.0.0",user="ro ...

  5. python连接access数据库查询并打印出来_Python连接Access和读取Access数据库的例子

    其实这个Python连接Access和读取Access数据库的例子是写给自己看的,网上已经有Python读取Access的例子了,我这个也是参考以上制作的. 而这个例子应该是只能在windows使用吧 ...

  6. python连接sqlite数据库的代码_【Python 连接SQLite数据库文件】

    涉及: Python连接db文件 如何按照列名获取数据 如何传入参数 示例代码如下: # encoding=utf-8 import sqlite3 def get_signal_names(db_f ...

  7. python连接elasticsearch查询数据

    python连接elasticsearch获取数据 原文:https://blog.csdn.net/ziqiaowang/article/details/54972279 # -*- encodin ...

  8. mac版python连接mysql_Mac下Python连接MySQL · BlBana’s BlackHouse

    Mac和Windows下安装mysqlclient坑点记录 Python连接MySQL(mysqlclient) Python连接MySQL类库pymysql python3:mysqlclient, ...

  9. python连接mysql数据库数据库_python如何连接mysql数据库

    先花点时间来说说一个程序怎么和数据库进行交互 1.和数据库建立连接 2.执行sql语句,接收返回值 3.关闭数据库连接 使用MySQLdb也要遵循上面的几步.让我们一步步的进行. 1.MySQL数据库 ...

最新文章

  1. Memcached原理分析
  2. linux图形图像三剑客,就linux三剑客简单归纳
  3. cxf restful_使用Apache CXF开发RESTful服务
  4. bind() c语言,c/c++ 标准库 bind 函数详解
  5. 初识html 尝试图片标签 0907
  6. CVPR 2020 | 旷视新方法优化解决遮挡行人重识别
  7. java将数据从外部读入到程序称为_java复习与练习答案beta3(基本可信~~)
  8. 【数字全排列】LeetCode 31. Next Permutation
  9. 试试Live Witer
  10. python实现抠图_python和opencv实现抠图
  11. win10显示无法连接到Internet但是能上网
  12. 如何用数据分析的概念制作简单Excel报表?
  13. SDP4模型推算卫星轨迹
  14. MIMIC申请失败问题及其他问题答复
  15. 那天我和小姐姐扯了半小时的JVM~
  16. mysql-下载/安装(图文结合)
  17. 微软Surface Pro笔记本如何设置u盘启动教程
  18. 计算机取证的相关案例,计算机取证实验报告(共9篇).doc
  19. 诗经 - 小雅 - 吉日
  20. 用PYQT5写一个登陆界面

热门文章

  1. 【Android】图标爆炸效果(类似小米卸载应用图标散开效果)
  2. 3大常用PCB设计软件AD、PADS、Allegro应该学哪个?
  3. php中时间戳与时间的相互转换
  4. 免费进入超星图书馆小技巧 --深圳广播电视大学数字图书馆
  5. 关于企业管理中不同的系统
  6. IDEA Java Junit单元测试入门实战
  7. SpringCloud项目打包Docker镜像并发布到Harbor仓库
  8. pytorch版本问题RuntimeError: params/unet.pth is a zip archive (did you mean to use torch.jit.load()?)
  9. 解决微信开发者工具最新版本的调试器中不显示AppData和Storage选项问题
  10. JS a标签下载文件而不打开文件