您的位置:首页 > 编程语言 > Python开发

《python编程快速上手》学习笔记-----口令保管箱

2017-09-17 11:26 337 查看
课本项目一:口令保管箱

目的:用于保存各种账号的密码,输入账户后会将账户密码拷贝到剪贴板,可直接粘贴到网站的密码输入框

知识点:pyperclip模块的应用、快捷执行py文件

1、代码部分

#! python3
#pw.py - An insecure password locker program
#path='E:/应用文件/spyder/让繁琐工作自动化'
PASSWORDS = {"百度账号":'1234',
"QQ":"yaashayang"
}

import sys,pyperclip
if len(sys.argv)<2:
print('Usage:python pw.py [account] - copy account password')
sys.exit()
account = sys.argv[1]

if account in PASSWORDS:
pyperclip.copy(PASSWORDS[account])
print('password in ' + account + ' is ' + PASSWORDS[account])
else:
print('There is no account named ' + account)


2、建立bat文件。

将代码保存,以管理员身份运行记事本,建立一个bat批处理文件,内容:

@python.exe E:\应用文件\spyder\让繁琐工作自动化\pw.py %*

@pause

保存为pw.bat文件,保存在‘E:\应用文件\spyder\让繁琐工作自动化’中

3、设置环境变量,将bat文件所在路径加入Path变量中

4、win + R 打开运行窗口,输入 “pw QQ”,点击“确定”,会跳出提示窗口,并将密码复制到剪贴板上





右键粘贴内容:

yaashayang

考虑到平常的账号组成,方便自己使用,完善一下代码,主要是将账户密码的存储变复杂了(滑稽)。

代码:

#! python3
#pw.py - An insecure password locker program
PASSWORDS = {'百度账号':{'曾只猪':'33b6b','海角徒':'30eo'},
'QQ':{'30922060':'se23fdd','44528384':'seio3(&'},
'CSDN':{'18814323812':'esefsec34'}
}

import sys,pyperclip
if len(sys.argv)<2:
print('enter the purpose after the order')
sys.exit()

purpose = sys.argv[1]

if purpose in PASSWORDS:
print(purpose +'\'s name is \t  password is' )
for name,pw in PASSWORDS[purpose].items():
print('\t' +name + '\t' + pw)
pyperclip.copy(PASSWORDS[purpose][list(PASSWORDS[purpose].keys())[0]])
print('copy the first password')
else:
print('you don\'t creat a ' + purpose+ ' account')


如果有多个账号,则默认将第一个账号的密码复制到剪贴板。

list(PASSWORDS[purpose].keys())[0] 获取第一个账户的名称。这样的一长串,仿若自己是个智障,可是想不到其他好一点的写法,先智障着。

结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 编程