WLM1ke / apimoex

Сlient for MOEX ISS
https://wlm1ke.github.io/apimoex/
The Unlicense
88 stars 26 forks source link

Возвращается список из пустых словарей, если запрашивается только одна колонка #18

Closed AlekseyGur closed 1 year ago

AlekseyGur commented 1 year ago

https://github.com/WLM1ke/apimoex/blob/1aa33b704125a82673a077336175ff49362ebb6f/apimoex/requests.py#L73

Если columns=('слово'), то ",".join(columns) = 'с,л,о,в,о'

Стоит написать что-то вроде:

query[f"{table}.columns"] = ",".join(columns) if isinstance(columns, tuple) and len(columns)>1 else str(columns)
WLM1ke commented 1 year ago

Согласно сигнатуре функции: https://github.com/WLM1ke/apimoex/blob/1aa33b704125a82673a077336175ff49362ebb6f/apimoex/requests.py#L39

Надо просто посылать, что написано - Optional[Tuple[str, ...]], а str

AlekseyGur commented 1 year ago

Ох, пардон. Не догадался...

WLM1ke commented 1 year ago

Я рекомендую, поставить mypy и запускать с флажком --strict подобного рода штуки отлично отлавливаются.