1+ from typing import Any
2+
13import requests
24
35from telegram_assistant .config import Configuration
68class VKParser :
79 def parse_vk_group_info (self ) -> dict :
810 """
9- Возвращает словарь с информацией о группе Вконтакте
11+ Возвращает словарь c информацией o группе Вконтакте
1012 """
1113 config_vk = Configuration ().vk
1214
@@ -31,27 +33,25 @@ def parse_vk_group_info(self) -> dict:
3133
3234 return group_info
3335
34- def parse_vk_wall_posts (self , number : int = 50 , is_dict : bool = True ) -> dict [int , str ] | str :
36+ def parse_vk_wall_posts (self , posts_count : int = 50 , is_dict : bool = True ) -> dict [int , str ] | str :
3537 """
36- :param isdict: True - возвращает словарь (КЛЮЧ - номер поста ЗНАЧЕНИЕ - текст поста)
37- False - возвращает строку с текстом всех постов
38- :param number: Указывает сколько постов нужно получить (Значение по умолчанию: 50)
38+ :param number: Указывает сколько постов нужно получить (Значение по умолчанию: 50);
39+ :param is_dict: True - возвращает словарь (КЛЮЧ - номер поста ЗНАЧЕНИЕ - текст поста),
40+ False - возвращает строку c текстом всех постов.
3941 """
4042 config_vk = Configuration ().vk
4143
42- count : int = number # Количество постов
43- posts : list = [] # Список всех запарсенных постов
44- posts_text_and_number : dict = {} # Словарь с №Списка и Текстом
45- text_list : list = [] # Список всего текса всех постов
46- text : str # Тескт всех постов
44+ posts : list [dict [str , Any ]] = []
45+ posts_dict : dict [int , str ] = {} # Ключ - номер поста, значение - текст поста
46+ all_posts_text : str # Тескт всех постов
4747
4848 result_post = requests .get (
4949 "https://api.vk.com/method/wall.get" ,
5050 params = {
5151 "owner_id" : config_vk .owner_id ,
5252 "access_token" : config_vk .token ,
5353 "v" : "5.199" ,
54- "count" : count ,
54+ "count" : posts_count ,
5555 "domain" : config_vk .group_domain ,
5656 },
5757 )
@@ -63,11 +63,11 @@ def parse_vk_wall_posts(self, number: int = 50, is_dict: bool = True) -> dict[in
6363 posts .extend (post )
6464
6565 for get_post in posts :
66- posts_text_and_number [posts .index (get_post )] = get_post ["text" ]
67- text_list .append (get_post ["text" ])
66+ posts_dict [posts .index (get_post )] = get_post ["text" ].replace (" \n " , "" ).replace ("\n " , "" )
6867
69- text = " " .join (text_list )
68+ all_posts_text = " " .join (list ( posts_dict . values ()) )
7069
7170 if is_dict :
72- return posts_text_and_number
73- return text
71+ return posts_dict
72+
73+ return all_posts_text
0 commit comments