2015-05-03 3 views
3

В прошлом я использовал библиотеку urllib2 для получения исходных кодов с веб-сайтов. Тем не менее, я заметил, что для недавнего веб-сайта, с которым я пытался играть, я не могу найти нужную мне информацию в исходном коде.Как очистить сайт AJAX?

http://www.wgci.com/playlist это сайт, на который я смотрел, и хочу получить самую последнюю песню и плейлист из последних песен. Я действительно хочу скопировать и вставить видимый, отображаемый текст на веб-сайт и поместить его в строку. Альтернативно, возможность доступа к элементу, который хранит эти значения в открытом тексте и получить их с помощью urllib2, обычно будет приятным. Есть ли способ сделать это?

Благодарим вас.

ответ

3

Веб-сайт, на котором вы хотите отказаться, использует вызовы ajax для заполнения его страниц данными. У вас есть 2 способа слом из него данные:

  • Используйте обезглавленное браузер, который поддерживает JavaScript (ZombieJS, например), а также металлолом сгенерированные, но это сложный и излишеством
  • Понимание того, как их API работы, и называть это напрямую, что проще.

Используйте инструменты Chrome dev (вкладка сети), чтобы видеть вызовы во время просмотра своего веб-сайта.

Например, список последних сыгранных песен для данного потока доступен в формате JSON на http://www.wgci.com/services/now_playing.html?streamId=841&limit=12

+0

То есть именно то, что мне нужно! И учитывая удушение, которое Clear Channel имеет на американском радиорынке, я могу распространить его на другие станции. Большое спасибо. – user3835980

Смежные вопросы