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

Scraping music playlist info from a website

我想从我喜欢的每日广播节目的在线播放日志中抓取艺术家和歌曲的名字。我想最终使用抓取的数据 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

使用 Chrome DevTools 窥探页面,您会发现页面的 'Broadcast Log' 部分实际上是一个具有不同 URL 的 iframe。这就是歌曲列表 "coming from".

的位置

将 iframe 的 URL 正确地交换到您的代码中 returns 歌曲。

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