您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)怎么利用Python實(shí)現(xiàn)原創(chuàng)工具的Logo與Help的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。
具體如下:
Sqlmap的Logo
Nmap的說(shuō)明文檔
本文接下來(lái)介紹Linux下的figlet工具,以及Python用于解析命令行參數(shù)和選項(xiàng)的標(biāo)準(zhǔn)模塊argparse。
Figlet使用
figlet是Linux下的一款工具,用于將輸入的字符串輸出為各種奇形怪狀的Logo。可用于撰寫(xiě)自己的工具后,插入代表著自己原創(chuàng)工具的Logo標(biāo)識(shí)。
安裝
sudo apt-get install figlet
目錄文件
flc為控制文件,flf為字體模板文件。
常用語(yǔ)法
figlet AnonySec -f standard.flf
① AnonySec 為我們要生成Logo的字符串
② -f standard.flf 為選擇不同風(fēng)格的模板
效果展示
Argparse模塊使用
argparse是python用于解析命令行參數(shù)和選項(xiàng)的標(biāo)準(zhǔn)模塊,向原創(chuàng)工具中加入幫助信息,編寫(xiě)可讀性非常好的程序。
大家對(duì)linux下的工具一定有印象吧,使用- -help查看幫助文檔。此模塊正是打造這樣的幫助文檔。
導(dǎo)入模塊
from argparse import ArgumentParser
可以直接import argparse,只不過(guò)寫(xiě)代碼的時(shí)候比較麻煩。
實(shí)例化對(duì)象
parser = ArgumentParser()
實(shí)例化一個(gè)ArgumentParser類(lèi)的對(duì)象
添加說(shuō)明文檔
parser.add_argument("-i", dest="ip", help="Please enter the ip,for example 192.168.1.1")
上述這行代碼的add_argument()方法是向parser中添加。
① -i 輸入時(shí)緊跟此參數(shù)的一個(gè)字符串為此參數(shù)的值
② dest=“ip” 將 -i 后面的字符串賦值給 ip
③ help=“******” 此參數(shù)的說(shuō)明信息
parser.add_argument("-t", dest="thread_count", type=int, default=100, help="Please enter the thread number")
① type=“int” 此參數(shù)的默認(rèn)類(lèi)型為int型
② default=100 當(dāng)不輸入此參數(shù)時(shí),此參數(shù)默認(rèn)為100
賦值
args = parser.parse_args()
將上述添加的參數(shù)進(jìn)行賦值。
完整代碼
parser = ArgumentParser() parser.add_argument("-i", dest="ip", help="Please enter the ip,for example 192.168.1.1") parser.add_argument("-t", dest="thread_count", type=int, default=100, help="Please enter the thread number") args = parser.parse_args() print 'The ip is: %s .' %args.ip print 'The thread number is: %s .' %args.thread_count
print是用來(lái)測(cè)試是否賦值成功。若賦值成功,就可以調(diào)用args.ip與args.thread_count來(lái)使用了。
附:Base64-Logo
logo_code = 'ICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fXyAgICAgICAgICAgIAogICAvIFwgICBfIF9fICAgX19fICBfIF9fICBfICAgXy8gX19ffCAgX19fICBfX18gCiAgLyBfIFwgfCAnXyBcIC8gXyBcfCAnXyBcfCB8IHwgXF9fXyBcIC8gXyBcLyBfX3wKIC8gX19fIFx8IHwgfCB8IChfKSB8IHwgfCB8IHxffCB8X19fKSB8ICBfXy8gKF9fIAovXy8gICBcX1xffCB8X3xcX19fL3xffCB8X3xcX18sIHxfX19fLyBcX19ffFxfX198CiAgICAgICAgICAgICAgICAgICAgICAgICAgIHxfX18vCgpQb3dlcmVkIGJ5IEFub255U2VjCkJsb2cnczogaHR0cDovL3d3dy5hbm9ueXNlYy5jbg==' logo = base64.b64decode(logo_code) print logo
logo_code是事先使用base64加密過(guò)的,目的是讓Logo的嵌入不顯得那么突兀。只需要base64解密一次,就可以將它輸出至屏幕。
實(shí)例效果圖
附源碼
# coding:utf-8 # powered by AnonySec import base64 from argparse import ArgumentParser logo_code = 'ICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fXyAgICAgICAgICAgIAogICAvIFwgICBfIF9fICAgX19fICBfIF9fICBfICAgXy8gX19ffCAgX19fICBfX18gCiAgLyBfIFwgfCAnXyBcIC8gXyBcfCAnXyBcfCB8IHwgXF9fXyBcIC8gXyBcLyBfX3wKIC8gX19fIFx8IHwgfCB8IChfKSB8IHwgfCB8IHxffCB8X19fKSB8ICBfXy8gKF9fIAovXy8gICBcX1xffCB8X3xcX19fL3xffCB8X3xcX18sIHxfX19fLyBcX19ffFxfX198CiAgICAgICAgICAgICAgICAgICAgICAgICAgIHxfX18vCgpQb3dlcmVkIGJ5IEFub255U2VjCkJsb2cnczogaHR0cDovL3d3dy5hbm9ueXNlYy5jbg==' logo = base64.b64decode(logo_code) print logo print '' parser = ArgumentParser() parser.add_argument("-i", dest="ip", help="Please enter the ip,for example 192.168.1.1") parser.add_argument("-t", dest="thread_count", type=int, default=100, help="Please enter the thread number") args = parser.parse_args() #parser.print_help() print 'The ip is: %s .' %args.ip print 'The thread number is: %s .' %args.thread_count print ''
感謝各位的閱讀!關(guān)于“怎么利用Python實(shí)現(xiàn)原創(chuàng)工具的Logo與Help”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。