[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Выдрать нужное :)
OneFinal
Здравствуйте :)) не могу написать регулярку что бы выдрать ссылку из этого кода
<table cellspacing="0" cellpadding="0">
<
tr>
<
td class="play_btn">
<
a onclick="playAudioNew('39703683_145881686')"><div class="play_new" id="play39703683_145881686"></div></a>
<
input type="hidden" id="audio_info39703683_145881686" value="http://cs4977.userapi.com/u112085300/audio/9dbf6d8d3248.mp3,240" />
</
td>
<
td class="info">
<
div class="duration fl_r" onmousedown="if (window.audioPlayer) audioPlayer.switchTimeFormat('39703683_145881686', event);">4:00</div>
<
div class="title_wrap"><b><a href="/search?c[q]=23%3A45%205ivesta%20family&c[section]=audio" onclick="if (checkEvent(event)) return; Audio.selectPerformer(event, '23:45 5ivesta family'); return false">23:45 5ivesta family</a></b><span class="title"><a href="" onclick="Audio.showLyrics('39703683_145881686',21333327,0);return false;">Спасибо за рай, в котором я жила и за любви искренние слова (DJ Velchev Pavel Remix) </a> </span><span class="user"></span></div>
</
td>
</
tr>
</
table>


помогите написать пож :))



Спустя 34 минуты, 13 секунд (10.04.2012 - 19:46) alexbel2404 написал(а):
((https?|ftp)\:\/\/([\w-]+\.)?([\w-])+\.(\w)+\/?[\w\?\.\=\&\-\#\+\/]+)

Спустя 18 минут, 56 секунд (10.04.2012 - 20:05) OneFinal написал(а):
что я делаю не так ?

set_time_limit(0);

function post($url,$post,$refer)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_REFERER, $refer);
curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook");
curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, 'http://vk.com/audio');
$result = curl_exec($ch);
return $result;

}




$result = post('http://vk.com/login.php','act=login&success_url=&fail_url=&try_to_login=1&to=&vk=&email='.$email.'&pass='.$pass,'http://vk.com/login.php');
$search_url="http://vk.com/audio";
$lines = file_get_contents($result);

preg_match_all('((https?|ftp)\:\/\/([\w-]+\.)?([\w-])+\.(\w)+\/?[\w\?\.\=\&\-\#\+\/]+)', $lines, $urls);

print_r ($urls);

Спустя 15 минут, 24 секунды (10.04.2012 - 20:20) alexbel2404 написал(а):
$result = post('http://vk.com/login.php','act=login&success_url=&fail_url=&try_to_login=1&to=&vk=&email='.$email.'&pass='.$pass,'http://vk.com/login.php');
$lines = file_get_contents($result);


это еще что?

Спустя 6 минут, 6 секунд (10.04.2012 - 20:26) Игорь_Vasinsky написал(а):
тырит музыку в контакте laugh.gif

Спустя 16 минут, 32 секунды (10.04.2012 - 20:43) alexbel2404 написал(а):
то я понял) я не пойму для чего вторая строчка?) ну и плюс с помощью ф-ии пост не получится авторизоваться в вк)

Спустя 45 секунд (10.04.2012 - 20:44) OneFinal написал(а):
нужно получить список ссылок, т.к уезжаю на дачу а без музыки жизнь не жизнь smile.gif

Спустя 1 день, 1 час, 10 минут, 14 секунд (11.04.2012 - 21:54) OneFinal написал(а):
upd Все ещё мучаюсь )

Спустя 2 часа, 17 минут, 6 секунд (12.04.2012 - 00:11) Winston написал(а):
preg_match_all('#class="title_wrap".*href=("|\')(.*)\1#iU', $lines, $urls);
echo '<pre>'.htmlspecialchars(print_r($urls, 1)).'</pre>';

Спустя 46 минут, 42 секунды (12.04.2012 - 00:58) OneFinal написал(а):
Array
(
[
0] => Array
(
[
0] => value=""
[1] => value="http://cs5615.userapi.com/u1288940/audio/3626b4de9e7e.mp3,233"
[2] => value="http://cs5427.userapi.com/u120239680/audio/54c6a4d9b9be.mp3,213"
[3] => value="http://cs5257.userapi.com/u52619846/audio/8b15ab41d121.mp3,283"
[4] => value="http://cs1323.userapi.com/u3390744/audio/6d69b3793cec.mp3,307"
[5] => value="http://cs4607.userapi.com/u34041396/audio/b8b19c6b8393.mp3,377"
[6] => value="http://cs4977.userapi.com/u112085300/audio/38bbaf4249c7.mp3,240"
[7] => value="http://cs4977.userapi.com/u112085300/audio
)

[1] => Array
(
[0] => "

[1] => "
[2] => "

[3] => "
[4] => "

[5] => "
[6] => "

[7] => "

)

[2] => Array
(
[0] =>
[1] => http://cs5615.userapi.com/u1288940/audio/3626b4de9e7e.mp3,233
[2] => http://cs5427.userapi.com/u120239680/audio/54c6a4d9b9be.mp3,213
[3] => http://cs5257.userapi.com/u52619846/audio/8b15ab41d121.mp3,283
[4] => http://cs1323.userapi.com/u3390744/audio/6d69b3793cec.mp3,307
[5] => http://cs4607.userapi.com/u34041396/audio/b8b19c6b8393.mp3,377
[6] => http://cs4977.userapi.com/u112085300/audio/38bbaf4249c7.mp3,240
[7] => http://cs4977.userapi.com/u112085300/audio/38bbaf4249c7.mp3,240

)

)


с такой регуляркой


preg_match_all('#value=("|\')(.*)\1#i', $result, $urls);


только теперь вопрос
например у меня 1к этих песен, что бы просмотреть дальше треки (ещё 50) нужно просто промотать колесиком вниз.. как заставить скрипт это сделать ?

Спустя 7 минут, 28 секунд (12.04.2012 - 01:05) Winston написал(а):
Тьфу ты, сразу что ли не мог написать, что на аудио файл нужна ссылка, а я тебе обычную ссылку выдрал :D

preg_match_all('#<.*type="hidden".*value="(.*\.mp3)[^>]*>#iU', $str, $match);
echo '<pre>'.htmlspecialchars(print_r($match, 1)).'</pre>';

Спустя 7 часов, 49 минут, 35 секунд (12.04.2012 - 08:55) OneFinal написал(а):
хорошо, работает, но как его заставить получить ВСЕ ссылки (например у меня на стр 1-2к песен, а получает он только 50.

Спустя 9 часов, 26 минут, 25 секунд (12.04.2012 - 18:21) OneFinal написал(а):
Что то странно, скрипт перестал работать smile.gif)) вобще на стр. не заходит и отдает пустые массивы

Спустя 11 часов, 11 минут, 54 секунды (13.04.2012 - 05:33) Эли4ка написал(а):
OneFinal
ну ведь ВКонтакте использует погрузку данных,а это помойму регулярки не умеют,недавно что-то Google там пытался из JS выбирать..
и вообще используйте Api ВК-очень удобная вещь-все песни в xml или json oтвете выдает..
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.