PYTHON 爬云音乐时 无法显示正常的ID 数字

kinglw110 2020-10-17 03:00:55
import requests
from bs4 import BeautifulSoup
url='https://music.163.com/#/discover/toplist' #云音乐飙升榜
headers={
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
}
res=requests.get(url=url,headers=headers)
soup=BeautifulSoup(res.text,'html.parser')
songs=soup.select('.m-table.m-table-rank tr')
for each in songs[2:3]: # 第一行表示标题

link='https://music.163.com/' + each.select('.txt a')[0]['href']
name=each.select('.txt a b')[0]['title']
# time=each.select('.u-dur')[0].text
pic=each.select('.tt .rpic')[0]['src']

# print('歌名:%s,地址:%s,图片:%s'%(name,link,pic))
print(link)

显示结果:
歌名:${x.name|escape}{if alia} - (${alia|escape}){/if},地址:https://music.163.com//song?id=${x.id},图片:${x.album.picUrl}?param=50y50&quality=100
这是什么情况,网站反爬了吗
...全文
330 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Swing0_0 2020-10-19
你这样下的只有试听部分,必须逆向分析获得加密参数,然后伪造请求获得真正的url 我有一篇专门写这个帖子,无奈涉及版权问题没法发布,你如果想学习的话可以私聊告诉你咋搞
  • 打赏
  • 举报
回复
kinglw110 2020-10-18
今天又碰到了一个问题 无法正常下载音乐
def save_song(name,url):
    try:
        print('正在下载:',name)
        print(url)
        urllib.request.urlretrieve(url,r'./songs/%s.mp3'% name)      
            
        print('下载成功')
    except:
        print('下载失败')
代码没有报错,且文件夹中也有下载的歌曲 就是歌曲的大小不对 无法播放 请教各位大侠这是什么情况?
  • 打赏
  • 举报
回复
kinglw110 2020-10-18
song_list={}
    songs=soup.select('#hotsong-list a')
    for each in songs: 
        # link='https://music.163.com/' + each['href']
        musicUrl='http://music.163.com/song/media/outer/url'+each['href'][5:]+'.mp3'
        title=each.text   
        # print('歌名:%s,地址:%s'%(title,link))
        song_list[title]=musicUrl
上面的问题已经搞定,是代码有问题
  • 打赏
  • 举报
回复 1
kinglw110 2020-10-17
刚学会一点爬虫就给我浇冷水
  • 打赏
  • 举报
回复
相关推荐
发帖
脚本语言
加入

3.7w+

社区成员

JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • ITBOB • 鲍勃
申请成为版主
帖子事件
创建了帖子
2020-10-17 03:00
社区公告

CSDN 脚本语言社区接受专栏投稿(专栏会在顶部创建专属你的栏目),投稿需满足以下要求:

  • 脚本语言技术相关;
  • 文章持续更新,保持活跃;
  • 内容清晰明了,干货为主;
  • 文章排版有序,有条有理。

本社区开通招聘专栏,发布招聘信息请联系版主,发布者需要保证招聘信息真实有效,CSDN 平台和版主不对招聘内容负责!

联系方式:私聊版主、发送邮件、QQ联系等均可: