semvec/pypi-packages huggingface dataset:
zut-spider 0.1.3
spider for Ayn
Requires Python: >=3.8

# DiiDu爬虫-python版本
尽力做到了对操作, 使用的还原.

# 使用
## config的配置

- 要求
```python
config = {
    'base_url': '...',  <-- 爬虫入口
    'content': {  <-- 用于划分主要区域
        'spilt_func': 'extract_content',
        'spilt_args': [
            '<div class="box1">', 
            '<div id="div_vote_id"></div>'
        ]
    },
    'value':{
        '标题'<--字段名: {
            'spilt_func': 'extract_content', <-- 使用的函数(暂时只有extract_content)
            'spilt_args': [
                '<p class="bt">',  <-- 参数
                '</p>'
            ]
        },
        ...可以自行添加其他字段名
    },
    'Next':{  <-- 下一页的配置
        'css':'a.Next',
        'name':'下页'  <-- 如果a.Next不唯一, 则可以根据name来筛选
    },
    'son':{
        'css': '.p2_right>ul>li>a'  <-- 子标签的css选择器
    }
}
```

- 示例
```python
config = {
    'base_url': '...',
    'content': {
        'spilt_func': 'extract_content',
        'spilt_args': [
            '<div class="box1">', 
            '<div id="div_vote_id"></div>'
        ]
    },
    'value':{
        '标题': {
        'spilt_func': 'extract_content',
        'spilt_args': [
            '<p class="bt">',
            '</p>'
        ]
        },
        '发布时间': {
        'spilt_func': 'extract_content',
        'spilt_args': [
            '<p>发布时间：',
            '</p>'
        ]
        },
        '正文内容': {
        'spilt_func': 'extract_content',
        'spilt_args': [
            '<div class="v_news_content">',
            '</div>'
        ]
        }
    },
    'Next':{
        'css':'a.Next',
        'name':'下页'
    },
    'son':{
        'css': '.p2_right>ul>li>a'
    }
}
```


## main.py
```python
from spider_kel import *
from competition_config import config
name = ''
import csv

if __name__ == "__main__":
    result = Spider(config)  # 结果为csv格式 [[title1, ..], [value1, ..], ..]
    
    # 保存结果到文件
    encoding = get_encoding(config['base_url'])  # 防止出现文件乱码的情况!
    with open(f'竞赛信息.csv', 'w', encoding=encoding, newline='') as f:
        writer = csv.writer(f)
        writer.writerows(result)
```

# 更新与优化
- 如果你想要更多功能, 或者遇到问题:  
    可以加qq: 2075389406 或 2075389406@qq.com 进行交流
e-commerce-franck-sdk 0.0.2
Software Development Kit (SDK) pour accéder à l'API E-Commerce (Data Analysts/ Data Scientists)
Requires Python: >=3.10

# E-commerce SDK - `e-commerce-franck-sdk`

Un SDK Python simple pour interagir avec l’API REST E-commerce. Il est conçu pour les **Data Analysts** et **Data Scientists**, avec une prise en charge native de **Pydantic**, **dictionnaires** et **DataFrames Pandas**.

[![PyPI version](https://badge.fury.io/py/moviesdk.svg)](https://badge.fury.io/py/moviesdk)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)

---

## Installation

```bash
pip install e-commerce-franck-sdk
```

---

## Configuration

```python
from e-commerce-franck-sdk import E_commerceClient, E_commerceConfig

config = E_commerceConfig(e_commerce_base_url="https://projet-backend-e-commerce-1.onrender.com")
client = E_commerceClient(config=config)
```

---

## Tester le SDK

### 1. Health check

```python
client.health_check()
```

### 2. Récupérer une vente

```python
vente = client.get_vente(id_commande=9, id_client=9, id_produit=9)
print("Vente récupérée :", vente)
```

### 3. Récupère la Liste des ventes avec pagination et filtres.

```python
ventes = client.list_ventes(output_format="pandas")
print(ventes)
```

---

## Modes de sortie disponibles
Toutes les methodes de filtrage par id sont : (`get_vente`, `get_client`, `get_produit`, etc). 
Toutes les méthodes de liste (`list_ventes`, `list_clients`, `list_produits`, etc.) peuvent retourner :

- des objets **Pydantic** (défaut)
- des **dictionnaires**
- des **DataFrames Pandas**

Exemple :

```python
client.list_produits(limit=10, output_format="dict")
client.list_clients(limit=10, output_format="pandas")
```

---

## Tester en local

Vous pouvez aussi utiliser une API locale :
### Conteneur Kocker
```python
config = E_commerceConfig(e_commerce_base_url="http://localhost:80")
client = E_commerceClient(config=config)
```

---

## Public cible

- Data Analysts
- Data Scientists
- Étudiants et curieux en Data
- Développeurs Python

---

## Licence

MIT License

---

## Liens utiles

- API Render : [https://projet-backend-e-commerce-1.onrender.com](https://projet-backend-e-commerce-1.onrender.com)
- PyPI : [https://pypi.org/project/e-commerce-franck-sdk](https://pypi.org/project/e-commerce-franck-sdk)