Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从网站上抓取音乐播放列表信息_Python_Html_Beautifulsoup_Screen Scraping - Fatal编程技术网

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

Python 从网站上抓取音乐播放列表信息,python,html,beautifulsoup,screen-scraping,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").rea

我正试图从我喜欢的一个每日广播节目的在线播放日志中搜集艺术家和歌曲的名字。我希望最终使用这些收集到的数据,使用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

使用Chrome DevTools浏览页面,您会发现页面的“广播日志”部分实际上是一个带有不同URL的iframe。这就是歌曲列表的“来源”

将iframe的URL交换到代码中可以正确返回歌曲

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

请将代码复制粘贴到问题中谢谢,完成。感谢您的反馈。