从网站上刮取音乐播放列表信息

时间:2016-03-06 05:07:34

标签: python html beautifulsoup screen-scraping

我试图从我喜欢的每日电台节目的在线播放中搜集艺术家和歌曲的名字。我想最终使用这些已删除的数据来使用python在Spotify或Youtube上编译播放列表。

为什么我的代码不会检索并打印所有歌曲?

import urllib2
from bs4 import BeautifulSoup # latest version bs4

soup = BeautifulSoup(urllib2.urlopen("http://music.cbc.ca/#!/The-Signal").read(), 'lxml')

song = soup.find_all("span", {'class': 'logTrackTitle'})

print song

My code

1 个答案:

答案 0 :(得分:0)

使用Chrome DevTools窥探页面,您会看到页面的“广播日志”部分实际上是一个具有不同网址的iframe。这就是歌曲列表“来自”的地方。

将iframe的网址正确地交换到您的代码中会返回歌曲。

import urllib2
from bs4 import BeautifulSoup # latest version bs4

soup = BeautifulSoup(urllib2.urlopen("http://music.cbc.ca/The-Signal").read(), 'lxml')

song = soup.find_all("span", {'class': 'logTrackTitle'})

print song