python爬取云音乐列表却解析不出数据

最近跟着网上教程初学着用python爬取页面,于是就想试着扒一扒自己网易云音乐歌单的歌曲,想把歌单里歌曲的链接曲名这些全部爬出来
def getPage():
url = 'http://music.163.com/#/m/playlist?id=75411989'
r = requests.get(url)
page = r.text
print page
pattern = re.compile(r'Jackrabbit
items = re.findall(pattern,page)
print items
for item in items:
print item
但是解析网页后发现根本解析不出歌曲id或名称,原因是否是我正则表达式不对呢?

然后借用网上找到的匹配链接的正则
pattern2 = re.compile(r"(?<=href=\").+?(?=\")|(?<=href=\').+?(?=\')")
得到了这样的结果
/song?id=${x.id}
javascript:;
/album?id=${x.album.id}
javascript:;
/album?id=${x.album.id}
/song?id=${x.id}
javascript:;

想问一下前辈们这个无法解析的原因,另外能否用beafulsoup得到结果呢?(歌曲信息链接似乎在非常子层的div中,感觉用bs4很复杂啊)

2个回答

一个可能是返回的内容是异步的 这样抓取的时候没有拿到内容。可以用selenium等webdriver试试

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问