Lenenergo parser
Описание
Библиотека, куда собран код, необходимый для получения, обработки и сохранения данных с сайта Россети Ленэнерго
Интерфейс
LenenergoParser
:
class LenenergoParser:
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
:
def split_addresses(df: pd.DataFrame) -> pd.DataFrame
get_building_id
:
def get_building_id(street: str) -> GeoTupleType
fetch_builing_ids
:
def fetch_builing_ids(df: pd.DataFrame) -> pd.DataFrame
async_fetch_building_id
:
async def async_fetch_building_id(
session: aiohttp.ClientSession, street: str
) -> GeoTupleType
async_fetch_building_ids
:
async def async_fetch_building_ids(df: pd.DataFrame) -> pd.DataFrame
concurrent_fetch_builing_ids
:
def concurrent_fetch_builing_ids(df: pd.Dataframe) -> pd.DataFrame
preprocess_df
:
def preprocess_df(df: pd.DataFrame) -> pd.DataFrame
COL_NS
:
COL_NS: dict[str, str]
ICOL_NS
:
ICOL_NS: dict[str, str]
PR_COL_NS
:
PR_COL_NS: tuple[str]
preprocess_read_df
:
def preprocess_read_df(df: pd.DataFrame) -> pd.DataFrame
group_by_index
:
def group_by_index(df: pd.DataFrame) -> pd.DataFrame
pipeline
:
def pipeline(parser: Optional[LenenergoParser] = None) -> LenenergoParser
Инструкция по запуску
В корневой папке проекта:
python -m venv .venv
pip install -r requirements.txt
python -m parser [<Период в часах>]
Формат сохраняемых файлов: data_%d-%m-%y_%H.%M.csv