ОсновноеRadiotalkПользовательское
Технологии вещания, софт, скрипты
3   •   Посмотреть все темы

Отображения фото артиста

 

129
UAFM @UAFM
Привет всем! Скажите пожалуйста , кто ни будь делал вывод фото артиста? В общем идея такая. При выводе трека , рядом выводится фото исполнителя. Можно конечно создать базу с фото, но думаю что есть лучшие варианты. Например сделать парсер который будет делать запросы в поисковых системах. Если кто то уже такое делал , прошу поделится))

6245
Тарас @tarasian666
я делал через last.fm API, можно даже на аяксе без php

сейчас поищу у себя...

6245
Тарас @tarasian666
Это тестовый кусок, вводим имя артиска - получаем инфо о нем и фото

<link rel="stylesheet" type="text/css" href="template/styles.css">
<script type="text/javascript" src="template/ajax.js"></script>
<script type="text/javascript">
<!--
function call_lastfm(artist){
var file = 'http://ws.audioscrobbler.com/2.0/';
var artist_info = new Array();
artist_info = new sack();
artist_info.requestFile = file;
artist_info.setVar('method', 'artist.getinfo');
artist_info.setVar('api_key', 'b25b959554ed76058ac220b7b2e0a026');
artist_info.setVar('artist', artist);
artist_info.onCompletion = function(){
document.getElementById('artist_info').innerHTML = "<span class=\"imagefloatright\"><img src=\"" + artist_info.responseXML.getElementsByTagName('image')[2].textContent + "\" /></span>" + artist_info.responseXML.getElementsByTagName('summary')[0].textContent;

}
artist_info.runAJAX();
}
//-->
</script>

<form onsubmit="call_lastfm(this.artist.value); return false;">
<input type=text name=artist>
<input type=submit>
</form>
<div id="artist_info"></div>

нужен еще скрипт **********

дорабатывайте сами

Отредактировано tarasian666 - 08.07.2012
129
UAFM @UAFM
Спасибо. Сейчас я понял что я вообще нуль в PHP и AJAX. Немогу никак привязать к Icecast .

129
UAFM @UAFM
Можете поделится еще своей версией подключения к icecast. ??

7094
--- @Render
Давно хотел сделать это, всё никак руки не доходили.
Таки **********)

127
Глеб @Psyhodelic
Render пишет:

Давно хотел сделать это, всё никак руки не доходили.
Таки **********)

Render, не поделишься скриптом?:-)

7094
--- @Render
Psyhodelic пишет:

Render пишет:

Давно хотел сделать это, всё никак руки не доходили.
Таки **********)

Render, не поделишься скриптом?:-)

У меня он немного специфичным получился в плане парсинга и реализации, пришлось php использовать для своих задач, поэтому к тебе сразу так не подойдёт, если только переделывать будешь после меня мой кривой код.
По сути ничего сложно нет в этом:
- парсишь по артисту данные с ласт фм
- регуляркой вытаскиваешь только линк на фото
- аяксом или как удобнее, подгружаешь в див id
В любом случае если интересно, покажу тебе php файлик, в лс на live-co или вк, ибо здесь как-то рандомно лс работает)

349
Юрий @Всё-просто
создал php страницу чтобы тупо проверить предоставленый пример. внутри есесьно хтмл код . Аякс в хеде все как положено!. Но ладно бы сам процесс не шел дак даже форму не отображает. просто пустая страница. это так и должно быть? )

Так, после нехитрых манипуляций форма на странице таки показалась. Но при вводе туда исполнителя ничего не происходит.


А во . Извиняйте за тревогу. шалил ключ и права доступа ))

Отредактировано Всё-просто - 13.12.2012
6245
Тарас @tarasian666
ключ они время от времени меняют, так что желательно использовать свой сгенерированый ключ

349
Юрий @Всё-просто
Спасибо за совет, а есть ли способ такой же не менее простой чтобы скрипт получал данные из статусной строки icecast , я попробовал просто пробить целую сттроку выводимого трека в icecast по формату исполнитель - трек , скрипт не ищет фотографию.

И где сгенерить свой кей , что то я невижу там )

Отредактировано Всё-просто - 13.12.2012
6245
Тарас @tarasian666
если брать с icecast то надо разбивать на артиста и трек, например брать разделитель " - " и совать в скрипт только исполнителя
лучше конечно брать название артиста из базы к примеру если используется sam или еще что то что умеет брать только артиста из файла что транслируется
таким же макаром можно брать обложку альбома

********** где-то там

349
Юрий @Всё-просто
у нас базы не используются. Я даже не знаю можно какой то пример кода, как разделить выводимый current song на на до "-" и после дефиса?

727
Leff27 @Leff27
$str = 'Артист - Трек';
$str_ar = explode(" - ", $str, 2);
echo $str_ar[0]; // Выведет Артист
echo $str_ar[1]; // Выведет Трек

Отредактировано Leff27 - 13.12.2012
6245
Тарас @tarasian666
javascript

var str ="artist - track";

str.split(" - ");

var artist = str[0];

349
Юрий @Всё-просто
Спасибо еще нашел тут ********** , ща наколдую че нибудь! )

349
Юрий @Всё-просто
Наведите на путь истинный пожалуйста!

Воспользовался представленной php версией

Получил таки данные с $str_ar[0] , мозгую как сделать так чтобы при получении названия артиста перед ним еще картинку выводило сразу же. Последнее что немогу обмозговать это как этот $str_ar[0] автоматом всунуть в скробб?

Отредактировано Всё-просто - 13.12.2012
349
Юрий @Всё-просто
я как бы прочитал как из php передать переменную в ajax только какое именно значение ajax в данном примере "принимающее" мне не совсем понятно.

6245
Тарас @tarasian666

<form onsubmit="call_lastfm(this.artist.value); return false;">

отсюда

call_lastfm(название_артиста) далее функиция делает то что в ней заложено

349
Юрий @Всё-просто
tarasian666 пишет:


<form onsubmit="call_lastfm(this.artist.value); return false;">

отсюда

call_lastfm(название_артиста) далее функиция делает то что в ней заложено



Я уже это пробывал
т.е. пробовал подсунуть вместо this artist value madonna :D
но нет никакой реакции. )