vk execute VS python while

Итак, финишная прамая на сегодня:py_vk

  • скрипт на Python, получающий комментарии из 57 постов за последних 7 дней
  • скрипт Python, отправляющий аргументы для vk execute порциями по 24 поста за раз со sleep(1) – во избежание флуда

Дано 57 постов и 797 комментариев под ними.

Старый вариант:

  • достается список элементов из таблицы БД где дата элемента между сегодня и -7 дней
  • для каждого изъятого из таблицы элемента с index[0] производится забор комментариев
    • если  index[1] – значение содержит число > 100 – значит в посте больше 100 комментов (ВК не отдает более 100 коментов за один запрос) то запустить while и счетчик, до тех пор, пока индекс итераций(offset_comments) не достигнет числа равному кол-ву комментов(post_com);

Время выполнения: 62.89

Далее:

Новый вариант с vk execute:vk_execute_getComments

  • список post_id также достается из таблицы БД;
  • далее анон. функция разбивает список на список списков по 24 элемента в каждом;
  • функция для разбивания списка в формат строки, который обманом можно скормить vk execute(см предыдущий пост);
  • для каждого элемента списка списков производится замена { ‘[‘ : ” , ‘ ‘ : ” , ‘]’ : ‘,’ } – и передается строкой на vk execute;
  • результат в формате JSON сохраняется по ключу [‘response’];
  • список всех ответов форматируется так, чтобы содержать один общий список из списка множеств;
  • процедура обработки постов по “если больше 100 комментов” и loop для сбора данных с каждого поста – лежат в хранимых процедурах:

 

Время выполнения: 6.01

Это пипец, товарищи, я до последнего не верил, что вообще есть смысл нырять головой в этот “омут”, но как показывает время – выигрыш в х10 раз!

 

 

trianglesis

About trianglesis

Александр Брюндтзвельт - гений, филантроп, 100 гривен в кармане. Этот блог - "сток" моих мыслей и заметок. Достаточно одного взгляда на него, чтобы понять, что такой же бардак творится у меня в голове. Если вам этот бардак интересен - милости прошу.
Bookmark the permalink.