semvec/pypi-packages huggingface dataset:
qte-parts-crawler 0.1.5
A web crawler for QTE parts data
Requires Python: >=3.6

## Usage

1. 使用命令行启动 Chrome 浏览器，开启远程调试模式
```bash
# MacOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \ --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-debug

# Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="C:\tmp\chrome-debug"
```

2. 在Chrome浏览器地址栏输入 https://www.showmetheparts.com, 然后人工完成验证码

3. 安装Python(如果已经安装了Python 3.11，可以跳过此步骤)

```bash
# MacOS
brew install python@3.11
python3.11 -m pip install --upgrade pip

# Windows
winget install python --version 3.11
python3.11 -m pip install --upgrade pip
```

4. 安装 qte-parts-crawler
```bash
pip3 install qte-parts-crawler==0.1.4
```
5. 运行 qte-parts-crawler

```bash
qte-parts-crawler
```


-------------

## Development

```bash
pip install -r requirements.txt
```

## Package & Publish
```bash
python3.11 -m build
twine upload dist/*
```
pyzt 0.0.4
Life is short, I Use Python with pyzt.
Requires Python: >=3.13

# pyzt

Life is short, I use Python.

`pyzt` is a Python library that provides a simple and efficient way to work with various tasks.
It is designed to be easy to use and flexible, allowing you to quickly implement and customize your tasks as needed.

## pyzt.auth

A reusable and secure Python authentication toolkit for JWT-based APIs and Applications.

### Features

- Create and verify JWT tokens (access and refresh tokens).
- Customizable `issuer` and `audience` and expiry and scopes.
- Defends against signature stripping, invalid types, and expired tokens.
- Secure password hashing with `argon2` or `bcrypt`.
- Zero-framework dependency — plug into any FastAPI, Flask, Django, or any other Python web frameworks, APIs, or even CLIs.


## Installation

```bash
uv add pyzt
```

## Usage

### 🔐 JWTAuth

```python
from pyzt.auth.jwt import JWTAuth

jwt_auth = JWTAuth(
    secret="your-secret",
    issuer="your-api",
    audience="your-app"
)

# Create a token with optional custom claims
access_token = jwt_auth.create_access_token("user@example.com", {
    "role": "admin",
    "scope": "read write"
})

# Validate token
payload = jwt_auth.decode_token(access_token, token_type="access")
```

### 🔁 Token Pair

```python
pair = jwt_auth.create_token_pair("user@example.com")
print(pair.access_token, pair.refresh_token)
```


### 🔒 Password Hashing

```python
from pyzt.auth.crypto import PasswordHasher

hasher = PasswordHasher("argon2")
hash = hasher.hash("mypassword")
assert hasher.verify("mypassword", hash)
```


## Models

```python
from pyzt.types.tokens import TokenPair, TokenPayload
```

## Security Coverage

- ✅ HS256 token signing
- ✅ Expiry checks
- ✅ Signature stripping attack defense
- ✅ Token type validation
- ✅ Role/scope claim support

## Testing

```bash
pytest tests/
```

## License
MIT