下载Crypto,CyCrypto,PyCryptodome 报错问题
python下载Crypto,CyCrypto,PyCryptodome,如有site-packages中存在crypto、pycrypto,在pip之前,需要pip3 uninstall crypto、pip3 uninstall pycrypto,否则无法安装成功。这里顺带说一下pycrypto和Crypto,这两个库已经有很久没有人维护了,最好下载PyCryptodome,用法都是一样的。
看到网上很多解决下载这些模块报错问题的,有说去site-packages中将crypto文件改成Crypto,但是我下载好的名字就是Crypto,所以这个方法对我没用。
错误下载方法如下:
pip install Crypto
pip install CyCrypto
pip install PyCryptodome
或者取PyCharm里面的Project Interpreter里面下载都不行。
或者去https://pypi.org/simple/pycryptodome/里面下载,解压后使用cmd命令框安装python setup.py install 也不行。
最后发现一篇博客,安装方法如下:
pip3 install pycryptodome
快速方式:pip3 install -i https://pypi.douban.com/simple pycryptodome
PyCrypto 已死,请替换为 PyCryptodome
pip3 install 模块 –upgrade –target=”指定的目录”
---------------------
作者:Quincy379
来源:CSDN
原文:https://blog.csdn.net/qq_33733970/article/details/79263359
版权声明:本文为博主原创文章,转载请附上博文链接!
只需在cmd命令框里或者PyCharm的Terminal里面使用pip3 install -i https://pypi.douban.com/simple pycryptodome 直接安装,便可正常使用该模块。
附带加解密代码块:
# coding:utf-8
# 使用DES进行加密: import Crypto.Cipher.DES3
import base64 # 限定密钥长度
def auto_fill(x):
if len(x) > 24:
return "密钥长度不能大于等于24位!"
else:
while len(x) < 16:
x += " "
return x.encode() # 密钥路径
# 普通密钥
# key = open('C:\\py\\test1\\key2.txt').read()
# 使用MD5进行加密后的密钥路径
key = open('D:\key1.txt').read()[8:-8] # 使用DES3加密
content = "123456789.a"
x = Crypto.Cipher.DES3.new(auto_fill(key), Crypto.Cipher.DES3.MODE_ECB)
a = base64.encodebytes(x.encrypt(auto_fill(content)))
print("加密后:", a)
# 使用DES3解密
b = x.decrypt(base64.decodebytes(a))
print("解密后:", b.strip())
57ed3398153c96260bb88e34ae12c4d6
key1.txt
加密后: b'7gVSFHcMUPVjoS0xRHuBkw==\n'
解密后: b'123456789.a'
执行结果
环境:python3.6 Windows10
结束!
下载Crypto,CyCrypto,PyCryptodome 报错问题的更多相关文章
- xadmin库的下载安装及奇葩报错的解决方法
今天主要讲xadmin库的下载和安装的.......各种问题....... 先注明:我使用的是python3.6,Django2.0,所以xadmin也应该是2.0版本会比较适配. 所以这里先给个xa ...
- Windows下载安装RabbitMQ教程-------报错卸载重新安装 (要卸载干净 -看下文)
Could not update enabled plugins file at c:\Users\忙聸鹿忙聳掳忙聰戮\AppData\Roaming\RabbitMQ\enabled_plugins ...
- 下载nltk数据包报错
安装nltk需要两步:安装nltk和安装nltk_data数据包 安装nltk 安装nltk很简单,可以直接在pycharm环境中安装,flie -> settings-> Python ...
- docker pull下载镜像时的报错及其解决方法
使用docker pull从镜像仓库拉取镜像时报错如下: [root@docker-registry ~]# docker pull centos Using default tag: latest ...
- Linux wget下载https类型文件报错解决方法 转自老左博客
原文链接:http://www.laozuo.org/3648.html 一般我们远程调用下载文件直接用wget就可以,一般文件路径类型是http.如果有遇到是https就会下载出错,稍微不注意的新手 ...
- 在action中进行文件下载,下载时运行不报错,可是也不下载
在写前端下载页面时,使用ajax方式调用action中的方法,然后就将下载内容返回js中了,所以没有下载,之后改为使用Windows.location进行下载,就没有问题了. action中代码: i ...
- git上下载的thinkphp框架报错解决方法
git上下载的thinkphp5框架使用.gitignore没上传依赖,需要通过composer进行下载依赖,使用composer install或者composer update即可解决.
- laravel 下载报错:Unable to guess the mime type as no guessers are available
在使用laravel的download()函数实现下载功能时,报错如下:Unable to guess the mime type as no guessers are available (Did ...
- 解决使用requests_html模块,html.render()下载chromium报错、速度慢问题
来源:https://www.cnblogs.com/xiaoaiyiwan/p/10776493.html 稍作修改 1.第一步,代码如下: from requests_html import HT ...
随机推荐
- es6冲刺01
1.let/const 1)作用域:es5中有全局作用域.函数作用域.es6中新增了块级作用域 2)let定义的变量在所在块级作用域外失效,严格模式下失效后直接报错, 且不允许重复声明同名变量 3)c ...
- linux常用命令和关闭防火墙
linux常用命令和关闭防火墙 2. linux常用命令 Mkdir 创建 Rm -rf 删除 Chmod -R 777 权限 Mysql -uroot -r quit退出 find ...
- C# WebApi+Task+WebSocket实战项目演练(四)
一.课程介绍 本次分享课程属于<C#高级编程实战技能开发宝典课程系列>中的第四部分,阿笨后续会计划将实际项目中的一些比较实用的关于C#高级编程的技巧分享出来给大家进行学习,不断的收集.整理 ...
- SpringBoot读取配置文件(从classpath/file读取yml/properties文件)
一.读取properties文件 使用配置项@PropertySource 二.读取yml文件 启动类添加下面代码: @Bean public static PropertySourcesPlac ...
- RestTemplate发送请求并携带header信息 RestTemplate post json格式带header信息
原文地址: http://www.cnblogs.com/hujunzheng/p/6018505.html RestTemplate发送请求并携带header信息 v1.使用restTempl ...
- golang dlv 远程调试
因为不知道delvel 是如何设置源码的,本地编译的上传到服务器上,服务器要调试看不到源码,很是忧伤,所以干脆使用远程调试吧: 在服务器上 ps x|grep game 查找到gameserver的进 ...
- 【大话QT之十二】基于CTK Plugin Framework的插件版本号动态升级
应用需求: 某些场景下我们可能面临这种问题,在执行着的应用程序不能终止的情况下,升级某个功能(或添,或减.或改动).在不採用CTK Plugin Framework插件系统架构的情况下这将是非常困难的 ...
- Python import语句导入模块语法[转]
Python import语句导入模块语法 社区推荐:掘金是国内最活跃的技术社区,我们每日有优质Python开发实例分享,海量python开源库推送.来掘金,和更多懂技术的小伙伴交流. pytho ...
- “5W1H”带你来学习JavaScript
上次的设计模式讲课,从中学习到了非常多.不仅是技术上,更重要的是怎样来学习.我们学习的技术.科技的更新速度超过我们的想象,对于我们这个有生命年限的个体,怎样可以在有生之年可以让自己立足于科技的不败浪潮 ...
- mysql存储过程详解 mysql存储过程和函数
第20章:存储程序和函数 目录 20.1. 存储程序和授权表 20.2. 存储程序的语法 20.2.1. CREATE PROCEDURE和CREATE FUNCTION 20.2.2. ALTER ...