2023-09-21 21:13:05 +03:00

74 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Rosseti parser
## Описание
Библиотека, куда собран код, необходимый для получения, обработки и сохранения данных с сайта [Россети Ленэнерго](https://rosseti-lenenergo.ru/planned_work/)
## Интерфейс
- `RossetiParser`:
```python
class RossetiParser:
def __init__(self, ndays=7, today: Optional[datetime] = None, file_path: Optional[str] = None) -> None
self.base_url: str
self.ndays: int
self.today: datetime
self.df: pd.DataFrame
def __str__(self) -> str
def fetch(self, ndays: Optional[int] = None, today: Optional[datetime] = None) -> None
def save_df(self, file_path: str) -> None
def load_df(self, file_path: str) -> None
```
- `split_addresses`:
```python
def split_addresses(df: pd.DataFrame) -> pd.DataFrame
```
- `fetch_builing_ids`:
```python
def fetch_builing_ids(df: pd.DataFrame) -> pd.DataFrame
```
- `preprocess_df`:
```python
def preprocess_df(df: pd.DataFrame) -> pd.DataFrame
```
- `COL_NS`:
```python
COL_NS: Dict[str, str]
```
- `ICOL_NS`:
```python
ICOL_NS: Dict[str, str]
```
- `preprocess_read_df`:
```python
def preprocess_read_df(df: pd.DataFrame) -> pd.DataFrame
```
- `group_by_index`:
```python
def group_by_index(df: pd.DataFrame) -> pd.DataFrame
```
- `pipeline`:
```python
def pipeline(parser: Optional[RossetiParser] = None) -> RossetiParser
```
## Инструкция по запуску
В корневой папке проекта:
```bash
python -m venv .venv
pip install -r requirements.txt
python -m rosseti_parser [<Период в часах>]
```
Формат сохраняемых файлов: `data_%d-%m-%y_%H:%M.csv`