Profile picture for user admin_romcom

Есть много прог/плагинов, которые позволяют качать свои аудизаписи с ВК. Но что делать, если нужно скачать все аудио с паблика?

Самый простой вариант - это парсинг html. Изобретать велосипед не стал - скролил страницу кнопкой End до первого поста. Думаю, можно было бы заюзать фугкцию wall.showMore(10), но было лень.
В общем, готовый файл весил 25 метров.
Скрипт написан на скорую руку, лишь бы работало!
Да, использую библиотеку CDom. https://github.com/amal/CDom . Лень было писать свой парсер.

 

 require_once __DIR__ . '/CDom-master/CDom.php';

$matches = array();
$myfile = fopen("links.txt", "w");

$i = 100;
$link = '';
$handle = fopen(__DIR__ . '/8bit_full.html', "r");
if ($handle) {
  while (($line = fgets($handle)) !== false) {

    if (strpos($line,'

 

Скрипт читает сохраненный html и сохраняет пару url file в файл.

Дальше решил сделать с помощью bash

 

#!/bin/sh

while read url file; do
 while [[ "$(pgrep -fc wget)" -gt 9 && $c -gt 10 ]]; do sleep 1; done; 
 ((c++));  
 echo "Launching $url ($c)";
 mkdir -p "${file%/*}"
 wget -c -O "$file" "$url" >/dev/null 2>&1 && echo "$c finsihed" & 
 #wget --post-data="$post" $url >/dev/null 2>&1 && echo "$c finsihed" & 
done 

 

В этом скрипте я параллельно запускаю по 10 закачек. Распарареливание с помощью wget  в действии!!
Итого с сообщества 8битной музыки https://vk.com/e_music_8bit было сграблено 3437 треков.

Решение кастомной и не претендует на универсальность. Писал же для себя)

Добавить комментарий

The content of this field is kept private and will not be shown publicly.
  • No HTML tags allowed.
 o   o    o-o  o   o    o     o-o  
| | / | | / |
o o O o o O--o o-o
\ / \ \ / o | |
o o-o o o-o o--o

Enter the code depicted in ASCII art style.