python - 我有一个哈希列表及其出现次数。我想获取出现次数(分号后的数字)
问题描述
这是我的代码。它得到一个散列列表,这些散列被泄露了。我想检查我的密码。我想要它做的是,当它发现它时,它会向我抛出它被泄露的次数,如果有的话。如何实现?例如,假设我们必要的哈希恰好是第二个,因此我们想要提取数字 3。我们已经是它前面的哈希。正如您在代码中看到的那样,它被命名为“结束”。
import hashlib
import requests
password = input("Enter password: ")
encoded_str = password.encode()
hash_obj = hashlib.sha1(encoded_str)
hashed = hash_obj.hexdigest().upper()
beginning = hashed[:5]
ending = hashed[5:].strip()
response = requests.get("https://api.pwnedpasswords.com/range/"+beginning)
output = response.text
listing = output.split()
print(listing)
输出:
['0015711CF2308DD93DC449B888F9805B728:1', '0083F4473656452B43073DF2861FD289F63:3', '0DE17FB8EC56DD673FF3AF94BAB5029BFF2:1', '0DEC778F27B49DECF0E7C3B8AB2DD152990:15', '0E8EEF1620F095A7A26F679388A02EFEA4C:2', '0FD09EF75E6654D1E2FB5FC715A11331B6D:2', '11CFB41389B28F08B74A17851292D086922:1', '12A7DE6568963683AA7D21E3FBA1A1B5D39:1', '12B602E54A280622E21FC57607D70F9E3D6:4', '133B5AFB8798339FF1BF29DBBD068DFB556:2912', '13723F1F53E4468943870CA48E2093C0531:5', '139946DFB7AA0936F96DFB9B27931508AC3:1', '13AB10DBA939781F0416361A25024EF0D8C:4', '13E2A779A5F3F6C4BA21F23A5FB949DE347:2', '52CFB9745616A23A369EA5AD9D480DFE8E9:1', '52F07FB24866744C9E7D7460A04C143AAA3:2']
我们的目标输出:
3
解决方案
尝试使用此代码:
num = 0
for line in listing:
if ending in line:
num = line.split(':')[1]
break
else:
print("the 'ending' is not in 'listing'")
推荐阅读
- vue.js - nuxt.js中来自cdn的静态资产链接问题
- c# - 如何迭代正则表达式的第一行?
- shiny - Shiny - dygraphs:在图例中显示所有错误栏值
- r - 如何让基本示例 Shiny 应用程序正常工作?
- elixir - PhoenixLiveView 更新视图时如何启动动画
- flutter - 从列表中删除元素后的英雄动画 - 如何阻止它尝试为空白框设置动画?
- python-3.x - 使用 ibm_db 遍历 python 元组并批量加载到数据库表中
- google-app-engine - 为 go1.12 灵活部署到 Google App Engine 失败
- r - 如何在 R 中标记不同的缺失数据
- php - 如何在数据库中插入图像并能够再次显示?