亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

前言

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

如下:

Sqlmap的Logo

Nmap的說明文檔

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

Figlet使用

figlet是Linux下的一款工具,用于將輸入的字符串輸出為各種奇形怪狀的Logo??捎糜谧珜懽约旱墓ぞ吆螅迦氪碇约涸瓌?chuàng)工具的Logo標(biāo)識(shí)。

安裝

sudo apt-get install figlet

目錄文件

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

常用語法

figlet AnonySec -f standard.flf

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

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

效果展示

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

Argparse模塊使用

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

導(dǎo)入模塊

from argparse import ArgumentParser

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

實(shí)例化對(duì)象

parser = ArgumentParser()

實(shí)例化一個(gè)ArgumentParser類的對(duì)象

添加說明文檔

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ù)的說明信息

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

① type=“int”   此參數(shù)的默認(rèn)類型為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是用來測試是否賦值成功。若賦值成功,就可以調(diào)用args.ip與args.thread_count來使用了。

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

附:Base64-Logo

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

logo_code是事先使用base64加密過的,目的是讓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 ''

總結(jié)

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

相關(guān)文章

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

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

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

    Django跨域請(qǐng)求原理及實(shí)現(xiàn)代碼

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

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

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

    python標(biāo)準(zhǔn)庫之time模塊的語法與簡單使用

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

    wxpython繪制圓角窗體

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

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

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

    Python提高運(yùn)行速度工具之Pandarallel的使用教程

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

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

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

    Python中if __name__ == "__main__"詳細(xì)解釋

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

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

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

最新評(píng)論