0x00 前言

这是在分析Cobra源码的时候看到的,作者使用PrettyTable模块将漏洞扫描结果以表格形式格式化的输出。

这个模块在写CLI形式的工具时,还是会经常用到的,可以使最终的输出结果更加美观、易读。

这篇文章将会对PrettyTable模块的使用做一个简单的介绍。

先贴一张效果图:https://asciinema.org/a/132572

0x01 基础环境

Microsoft Windows 7 专业版

Python 3.6.3

PrettyTable-0.7.2

0x02 PrettyTable模块的安装与使用

一、安装PrettyTable模块

pip3 install PrettyTable

二、PrettyTable模块的使用

这里以命令行工具产生数据后将其输出为例,PrettyTable模块的使用一共分为4个步骤,缺一不可:

1、导入PrettyTable模块

2、设置表格的列数及列名

3、设置表格的对其方式

4、向表格中插入内容(多次插入)

from prettytable import PrettyTable

table = PrettyTable(['No.', 'CVI', 'VUL', 'Rule', 'Lang', 'Level-Score', 'Target', 'Commit(Time, Author)', 'Source Code Content', 'Analysis'])

table.align = 'l'

trigger_rules = []

row = ["1", "130001", "HCP", "password", "PHP", "L-02: ■■□□□□□□□□", "config.php:32", "Unknown, @Unknown", "$dbpassword = 'root';", "REGEX-ONLY-MATCH"]

table.add_row(row)

print(table)

同时,PrettyTable模块还支持以CSV、HTML、SQL文件作为导入、导出结果,由于我暂时用不到,所以就没做过多的测试。

0x03 后记

PrettyTable模块出来可以直接将结果以表格的形式输出外,还支持输出子表格、将结果排序后进行输出,更多丰富的功能可以从参考链接中获取。

此外,安利一个网站Python Example,输入一行Python代码,即可获得很多示例代码供参考引用。

0x04 参考链接

python美化输出模块_美化输出结果之Python模块PrettyTable介绍相关推荐

  1. python教程输入_输入/输出

    输入 输出 会有这种情况,你的程序必须与用户进行交互.例如,你想获取来自用户的输入,然后打印一些返回的结果.我们可以分别使用input()和print()函数来实现. 对于输出,我们还可以使用str( ...

  2. print python excel分隔_合并/拆分 Excel?Python、VBA轻松自动化

    作者 | Ryoko 来源 | 凹凸数据 当你收集了 n 个人的 EXCEL 记录表,需要将它们汇成一个总表时你会怎么做呢? 如果不通过技术手段,要一个个打开再复制粘贴也太麻烦了吧! 此时就需要一个通 ...

  3. 怎么用python自制计算公式_手把手教你用python制作简易计算器,能够记录你使用的情况...

    话不多说,首先先看效果图,它能够记录你在使用过程中的历史,方便你查看是否有错: 接下来就仔细分析一下是如何制作的: 简易计算器 第一步:导入资源库 在过程中使用到了tkinter这个资源库,win+R ...

  4. python做运动控制_第一课:用Python操控小龟小车运动

    欢迎来到小龟的课堂,今天我们讲如何用小龟小车的车载Python控制小车运动. 如果小伙伴还不会使用小龟小车的Python编辑器的话,可以阅读这篇教程<如何使用小龟小车的Python编辑器> ...

  5. python 推迟运行_一文看懂Python的time模块sleep()方法和strftime()方法

    概述 今天主要介绍一下Python的time sleep()方法和strftime()方法. 一.Python time sleep()方法 Python time sleep() 函数推迟调用线程的 ...

  6. 怎么用python自制计算公式_自制计算经纬度位移 python 程序

    前两天,我的老同学发邮件给我,希望我能制作一个能多点定位的,可以计算经度和纬度距离的在线计算器来帮助他的工作.当然还不止这些,同时他还希望能做以下相对的排序. 比如说,同一个位置的经纬度开始,移动向东 ...

  7. python医学应用_数据分析工具鄙视链:Python、R语言是老大,Excel只能称小弟?

    最新行业报告 2020数据分析.商业分析行业报告工作岗位与职能.薪资对比.热招公司等多方面详细解读帮助你一网打尽,斩获心仪Offer! 扫码回复[数据分析 0]立即领取 History语言发展史ABC ...

  8. python 温度 符号_【火马】Python学习小记01

    Python 学习小记 Life is short,you need Python! 写在前面 自从重新拾起2016年开始注册的公众号"火马编程",我就把TA当作了自己的一块&qu ...

  9. python解析原理_代码详解:Python虚拟环境的原理及使用

    Python的虚拟环境极大地方便了人们的生活.本指南先介绍虚拟环境的基础知识以及使用方法,然后再深入介绍虚拟环境背后的工作原理. 注意:本指南在macOS Mojave系统上使用最新版本的Python ...

最新文章

  1. Spring Boot使用@Async实现异步调用:自定义线程池
  2. sloth——算法工程师标注数据的福音
  3. 微信小程序 获取用户信息 官网例程 详解
  4. oracle 用户账户被锁处理
  5. ApacheCN 人工智能知识树 v1.0
  6. 60-40-020-序列化-自定义序列化
  7. C#3.0中的新特性
  8. mysql离线安装 window_5分钟完成mysql离线安装
  9. 华成英-模拟电子技术P13 多级放大器 笔记
  10. 深度学习算法原理——神经网络的基本原理
  11. C#调用Outlook发送邮件
  12. iOS学习之路-简单汤姆猫
  13. Docker 容器技术(史上最强总结)
  14. Verisiondog自动化系统备份
  15. mysql查最高薪水,使用子查询查找MySQL Employee表的最高和第二最高薪水?
  16. 技术专栏|多旋翼飞行器振动机理分析和减振设计
  17. sass + compass
  18. Android版本代号
  19. java毕业设计拾忆鲜花销售系统mybatis+源码+调试部署+系统+数据库+lw
  20. Cesium常用知识及学习

热门文章

  1. 为什么要用3个通道来表示法线?
  2. 利用MSF批量打RMI漏洞
  3. 关于java AudioInputStream播放短音频没声音的问题
  4. 根据标准word模板生成word文档类库(开源)
  5. Restlet入门例子 - RESTful web framwork for java
  6. 调整SAP系统中物料账和财务账的期间
  7. 8-Mybatis 的动态 SQL 语句
  8. linux中的echo%3e文件,Linux学习笔记-shell脚本中${}的使用方法
  9. linux串口程序不能,在uclinux下编写串口通信程序,COM2只能发送数据不能接收,是怎么回事呢?...
  10. 用html5做一个介绍自己家乡的页面_厚溥资讯 | HTML5的小知识点小集合(上)