欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用Python實現(xiàn)原創(chuàng)工具的Logo與Help

 更新時間:2018年12月03日 09:47:24   作者:AnonySec  
這篇文章主要給大家介紹了關(guān)于如何利用Python實現(xiàn)原創(chuàng)工具的Logo與Help的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考借鑒,下面來一起看看吧

前言

當我們使用Python完成自己的原創(chuàng)的工具時,比如:端口掃描、弱口令爆破等。你是否想過添加自己的Logo,以及簡要的幫助信息?

如下:

Sqlmap的Logo

Nmap的說明文檔

本文接下來介紹Linux下的figlet工具,以及Python用于解析命令行參數(shù)和選項的標準模塊argparse。

Figlet使用

figlet是Linux下的一款工具,用于將輸入的字符串輸出為各種奇形怪狀的Logo??捎糜谧珜懽约旱墓ぞ吆?,插入代表著自己原創(chuàng)工具的Logo標識。

安裝

sudo apt-get install figlet

目錄文件

flc為控制文件,flf為字體模板文件。

常用語法

figlet AnonySec -f standard.flf

① AnonySec 為我們要生成Logo的字符串

② -f standard.flf 為選擇不同風(fēng)格的模板

效果展示

【注:其他使用參數(shù),請自行查閱】

Argparse模塊使用

argparse是python用于解析命令行參數(shù)和選項的標準模塊,向原創(chuàng)工具中加入幫助信息,編寫可讀性非常好的程序。
大家對linux下的工具一定有印象吧,使用- -help查看幫助文檔。此模塊正是打造這樣的幫助文檔。

導(dǎo)入模塊

from argparse import ArgumentParser

可以直接import argparse,只不過寫代碼的時候比較麻煩。

實例化對象

parser = ArgumentParser()

實例化一個ArgumentParser類的對象

添加說明文檔

parser.add_argument("-i", dest="ip", help="Please enter the ip,for example 192.168.1.1")

上述這行代碼的add_argument()方法是向parser中添加。

① -i   輸入時緊跟此參數(shù)的一個字符串為此參數(shù)的值

② dest=“ip”   將 -i 后面的字符串賦值給 ip

③ help=“******”   此參數(shù)的說明信息

parser.add_argument("-t", dest="thread_count", type=int, default=100, help="Please enter the thread number")

① type=“int”   此參數(shù)的默認類型為int型

② default=100   當不輸入此參數(shù)時,此參數(shù)默認為100

賦值

args = parser.parse_args()

將上述添加的參數(shù)進行賦值。

完整代碼

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是用來測試是否賦值成功。若賦值成功,就可以調(diào)用args.ip與args.thread_count來使用了。

【注:其他使用參數(shù),請自行查閱】

附:Base64-Logo

logo_code = 'ICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICAgX19fXyAgICAgICAgICAgIAogICAvIFwgICBfIF9fICAgX19fICBfIF9fICBfICAgXy8gX19ffCAgX19fICBfX18gCiAgLyBfIFwgfCAnXyBcIC8gXyBcfCAnXyBcfCB8IHwgXF9fXyBcIC8gXyBcLyBfX3wKIC8gX19fIFx8IHwgfCB8IChfKSB8IHwgfCB8IHxffCB8X19fKSB8ICBfXy8gKF9fIAovXy8gICBcX1xffCB8X3xcX19fL3xffCB8X3xcX18sIHxfX19fLyBcX19ffFxfX198CiAgICAgICAgICAgICAgICAgICAgICAgICAgIHxfX18vCgpQb3dlcmVkIGJ5IEFub255U2VjCkJsb2cnczogaHR0cDovL3d3dy5hbm9ueXNlYy5jbg=='
logo = base64.b64decode(logo_code)
print logo

logo_code是事先使用base64加密過的,目的是讓Logo的嵌入不顯得那么突兀。只需要base64解密一次,就可以將它輸出至屏幕。

實例效果圖

附源碼

# 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 ''

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • python3.8.1+selenium實現(xiàn)登錄滑塊驗證功能

    python3.8.1+selenium實現(xiàn)登錄滑塊驗證功能

    這篇文章主要介紹了python3.8.1+selenium解決登錄滑塊驗證的問題,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • Django跨域請求原理及實現(xiàn)代碼

    Django跨域請求原理及實現(xiàn)代碼

    這篇文章主要介紹了Django跨域請求原理及實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • python入門之Tkinter使用的方法詳解

    python入門之Tkinter使用的方法詳解

    作為Python開發(fā)者,圖形用戶界面(GUI)開發(fā)是必備技能之一,本文將介紹Python自帶的GUI工具包TKinter,這篇文章主要給大家介紹了關(guān)于python入門之Tkinter使用的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • python標準庫之time模塊的語法與簡單使用

    python標準庫之time模塊的語法與簡單使用

    在平常的代碼中,我們常常需要與時間打交道,那么在Python中,與時間處理有關(guān)的模塊就包括:time、datetime以及calendar,這篇文章主要給大家介紹了關(guān)于python標準庫之time模塊的語法與使用的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • wxpython繪制圓角窗體

    wxpython繪制圓角窗體

    這篇文章主要為大家詳細介紹了wxpython繪制圓角窗體,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • pytorch加載自定義網(wǎng)絡(luò)權(quán)重的實現(xiàn)

    pytorch加載自定義網(wǎng)絡(luò)權(quán)重的實現(xiàn)

    今天小編就為大家分享一篇pytorch加載自定義網(wǎng)絡(luò)權(quán)重的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • Python提高運行速度工具之Pandarallel的使用教程

    Python提高運行速度工具之Pandarallel的使用教程

    為了提高運行速度,我們一般會采用多進程的方式。而常見的方案對于普通python玩家來說都不是特別友好,怎樣才能算作一個友好的并行處理方案?本文就來和大家講講pandarallel的使用
    2022-09-09
  • python基礎(chǔ)之模塊的導(dǎo)入

    python基礎(chǔ)之模塊的導(dǎo)入

    這篇文章主要介紹了python模塊的導(dǎo)入,實例分析了Python中返回一個返回值與多個返回值的方法,需要的朋友可以參考下
    2021-10-10
  • Python中if __name__ ==

    Python中if __name__ == "__main__"詳細解釋

    這篇文章主要介紹了Python中if __name__ == "__main__"詳細解釋,需要的朋友可以參考下
    2014-10-10
  • Python實現(xiàn)的樸素貝葉斯算法經(jīng)典示例【測試可用】

    Python實現(xiàn)的樸素貝葉斯算法經(jīng)典示例【測試可用】

    這篇文章主要介紹了Python實現(xiàn)的樸素貝葉斯算法,結(jié)合實例形式詳細分析了Python實現(xiàn)與使用樸素貝葉斯算法的具體操作步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-06-06

最新評論