nbclass工具包
Project description
NBCLASS
环境要求:
- Python 3.6.0+
- Works on Linux, Windows, macOS
安装
From PyPi:
pip install nbclass
更新
1.4版本
- 1.4 添加装饰器
- 1.4.6 更新数据库查询, 哈希加密工具
- 1.4.7 添加AES加解密工具
from nbclass import tools
key = '1234567890123456'
print(tools.aes_encrypt_cbc(key, '人生苦短我用python', key)) # => YkeE6FB0FhZaXYsj+AYWMiTJDdOJS4g1EQzZ1WRN2DQ=
print(tools.aes_encrypt_cbc(key, '人生苦短我用python', key, is_hex=True)) # => 624784e8507416165a5d8b23f806163224c90dd3894b8835110cd9d5644dd834
- 1.4.8 添加Hmac加解密方法
from nbclass import tools
tools.get_hmac_md5('123456', '人生苦短我用python')
tools.get_hmac_sha1('123456', '人生苦短我用python')
tools.get_hmac_sha256('123456', '人生苦短我用python')
tools.get_hmac_sha256('123456', '人生苦短我用python')
1.5版本
- 1.5.0 添加账号管理池
from typing import Optional
from nbclass.db.mysqldb import MysqlDB
from nbclass.db.redisdb import RedisDB
from nbclass.decorators import singleton
from nbclass.network.user_pool import NormalUser
from nbclass.network.user_pool import NormalUserPool
@singleton
class MysqlDB1341(MysqlDB):
def __init__(self):
super().__init__(
ip='192.168.1.110',
port=3306,
db='test',
user_name='python',
user_pass='123456975.20',
)
class RedisDB28(RedisDB):
def __init__(self, db=0):
super().__init__(
ip_ports='192.168.2.28:6379',
db=db,
user_pass='feapderYYDS'
)
class TestGuestUserPool(NormalUserPool):
def login(self, user) -> Optional[NormalUser]:
user = NormalUser(
user_id=user.user_id,
username=user.username,
password=user.password,
token='CAOJrYvo0VINfMyMKXeIUcNlDhteJfQk_uIg_bIeCj65b0XLJbIxoNiuIPIIle2FAbhQ_V6TklV5pwNcSTirqQ',
mobile=None
)
return user
if __name__ == '__main__':
user_pool = TestGuestUserPool(
redis_cli=RedisDB28(db=1),
mysql_cli=MysqlDB1341(),
redis_key="python:mtUserPool",
table_userbase='py_user_pool',
keep_alive=True,
)
users = user_pool.get_user()
print("取到user:", users)
1.5版本
- 1.5.1 增加国密算法
from nbclass.encrypt import CryptSM2
# sm2签名
sm2 = CryptSM2(private_key='', public_key='')
msg = 'bf9e57456f0bb709471783fa1aad8a3b7f1bef38'
sign = sm2.sign(msg, '123456789abcdef')
verify = sm2.verify(sign, msg)
print(sign)
print(verify)
# sm2加解密
ciphertext = sm2.encrypt(msg)
print(ciphertext.hex())
plaintext = sm2.decrypt(ciphertext, is_hex=True)
print(plaintext)
from nbclass.encrypt.sm3 import sm3_hash
print(sm3_hash('123456'))
# sm4
from nbclass.encrypt.sm4 import CryptSM4 as Sm4, EncodeType
key = '132F8664322CBA13142E21161297AD91'
data = '123456789'
s4 = Sm4(key)
cbc = s4.encrypt_cbc(iv=key, msg=data).hex()
ecb = s4.encrypt_ecb(msg=data).hex()
print('cbc加密', cbc)
print('ecb加密', ecb)
cbc_d = s4.decrypt_cbc(iv=key, msg=cbc, input_type=EncodeType.HEX)
ecb_d = s4.decrypt_ecb(msg=ecb, input_type=EncodeType.HEX)
print('cbc解密', cbc_d)
print('ecb解密', ecb_d)
爬虫工具推荐
- 爬虫在线工具库:http://www.spidertools.cn
- 验证码识别库:https://github.com/sml2h3/ddddocr
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nbclass-1.5.3.tar.gz
(51.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
nbclass-1.5.3-py3-none-any.whl
(60.1 kB
view details)
File details
Details for the file nbclass-1.5.3.tar.gz.
File metadata
- Download URL: nbclass-1.5.3.tar.gz
- Upload date:
- Size: 51.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
06700f0c2abc97b9c59a68ca5238374764ceac1361a0047cdb0fb631b129aeb3
|
|
| MD5 |
c8895177aaff62208082d2c466c2ce84
|
|
| BLAKE2b-256 |
c61b795a31d9f47da8dc961996730551c8f2af33a74bd88475e9bb625f64c116
|
File details
Details for the file nbclass-1.5.3-py3-none-any.whl.
File metadata
- Download URL: nbclass-1.5.3-py3-none-any.whl
- Upload date:
- Size: 60.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88e84c9e02d225d4b184935c5226a8647293690b6141d6b59f7ff34860671ae8
|
|
| MD5 |
25dcbbb939ce5e5e4a55994d293283e3
|
|
| BLAKE2b-256 |
5d7e2177474745712a84862795194c43c9db7dfeb90f92cae0c30d4014ce72da
|