QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码

主题

帖子

荣誉

新鱼友

Rank: 1

积分
70
查看: 276|回复: 20

[学习笔记] [爬虫]记第一次爬虫------百度音乐

[复制链接]
最佳答案
0 
累计签到:35 天
连续签到:3 天
孤独的嫖客 发表于 2018-1-11 15:23:40 27620 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 孤独的嫖客 于 2018-1-11 15:30 编辑

终于开启了爬虫路,然后大致方向是全栈,最后希望能走到机器学习

记个人第一次爬虫,先整理一下爬虫思路:

流程.png


首先,我们写出主函数流程:

   - 输入查询资料
   - 根据资料获取歌曲ID
   - 根据歌曲ID采集歌曲地址
   - 根据歌曲地址采集歌曲


大致代码如图所示:
主函数.png

然后,按照步骤写出各个函数的实现:

根据资料获取歌曲ID实现:
获取songid.png

根据歌曲ID采集歌曲地址:
分析下载地址.png

根据歌曲地址采集歌曲:
采集歌曲.png

目前发现已有BUG:
        因为采集到的歌曲采取的是歌名自动保存,则如果歌名重复,下载的文件会被新的重名文件覆盖,解决思路,歌名命名加入时间戳或者序号,避免文件被重名覆盖.


那么本次爬虫全部代码如上所示,因个人账户用户组只能上传10张图片,网页分析图片与解释则不能完全详细说明,后期有空会录制本次爬虫过程分析与心得
目前已发现自己不足之处:
1.没有学正则表达式,为了匹配希望得到的文本,话费了巨大的时间
2.文件创建 读写 还需加强学习

以上!
源代码如下:
游客,如果您要查看本帖隐藏内容请回复


谢谢大家赏脸


签名档.png

楼层
跳转到指定楼层
最佳答案
0 
累计签到:29 天
连续签到:16 天
幻影骑士 发表于 2018-1-11 15:56:56 | 显示全部楼层
谢谢
最佳答案
0 
累计签到:48 天
连续签到:7 天
mintaka 发表于 2018-1-11 16:09:12 | 显示全部楼层
围观
最佳答案
0 
累计签到:211 天
连续签到:2 天
追自由的风 发表于 2018-1-11 16:53:09 | 显示全部楼层
哇,我就想问下,能不能分享一下pycharm的配置。。
最佳答案
3 
累计签到:48 天
连续签到:3 天
枫树霜雪 发表于 2018-1-11 17:23:47 | 显示全部楼层
看看,学习学习
最佳答案
0 
累计签到:60 天
连续签到:1 天
陌生の你 发表于 2018-1-11 19:03:51 | 显示全部楼层
谢谢楼主的分享
最佳答案
0 
累计签到:1 天
连续签到:1 天
elen_ll 发表于 2018-1-12 10:40:07 | 显示全部楼层
xiexie
最佳答案
0 
累计签到:66 天
连续签到:1 天
杨SHUN 发表于 2018-1-12 20:32:44 | 显示全部楼层
学习一一下
最佳答案
0 
累计签到:1 天
连续签到:1 天
print官方旗舰店 发表于 2018-1-12 22:26:42 | 显示全部楼层
学习了 小白还在前进中
最佳答案
0 
累计签到:48 天
连续签到:7 天
mintaka 发表于 2018-1-13 16:23:00 | 显示全部楼层
这个 百度 API 是怎么找到的
最佳答案
0 
累计签到:35 天
连续签到:3 天
孤独的嫖客  楼主| 发表于 2018-1-13 17:47:55 | 显示全部楼层
mintaka 发表于 2018-1-13 16:23
这个 百度 API 是怎么找到的

获取歌曲ID的API
通过网页调试得知

歌曲ID API.png
得到地址 再传参就行

获取歌曲下载地址的API同理
1.png

嗨呀  还有一张图  用户组限制   传不了啊   好气啊   

总之 网页分析比写爬虫重要  多练吧
最佳答案
0 
累计签到:48 天
连续签到:7 天
mintaka 发表于 2018-1-13 19:14:13 | 显示全部楼层
孤独的嫖客 发表于 2018-1-13 17:47
获取歌曲ID的API
通过网页调试得知

get√新姿势
最佳答案
0 
累计签到:48 天
连续签到:7 天
mintaka 发表于 2018-1-13 19:35:08 | 显示全部楼层
抱歉再打扰一下,我能找到下载的,可这个。。。http://musicapi.qianqian.com/v1/restserver/tingmethod=baidu.ting.song.play&format=jsonp&callback=jQuery17207018626721275554_1515574223379&_=1515574224279
(无能狂怒)
最佳答案
0 
累计签到:35 天
连续签到:3 天
孤独的嫖客  楼主| 发表于 2018-1-13 22:26:06 | 显示全部楼层
mintaka 发表于 2018-1-13 19:35
抱歉再打扰一下,我能找到下载的,可这个。。。http://musicapi.qianqian.com/v1/restserver/tingmethod=ba ...

这个不能直接访问,需要携带data里面的参数 就是songid   两个并在一起才能访问,我今天传不了图了
源码上应该有备注
最佳答案
0 
累计签到:48 天
连续签到:7 天
mintaka 发表于 7 天前 | 显示全部楼层
孤独的嫖客 发表于 2018-1-13 22:26
这个不能直接访问,需要携带data里面的参数 就是songid   两个并在一起才能访问,我今天传不了图了
源码上 ...

我知道加上参数,我的意思是这个api在哪找到的,我找了好久也没看到
最佳答案
0 
累计签到:35 天
连续签到:1 天
wsmdjsj 发表于 6 天前 | 显示全部楼层
来学习啦
最佳答案
0 
累计签到:1 天
连续签到:1 天
王平 发表于 6 天前 | 显示全部楼层
感谢,受教了
最佳答案
0 
累计签到:6 天
连续签到:1 天
懒癌患者 发表于 6 天前 | 显示全部楼层
最佳答案
0 
累计签到:3 天
连续签到:1 天
zizaipanhongb 发表于 6 天前 | 显示全部楼层
能让我看看你的pytharm是怎么配置模块的吗?我不知道你的模块不好弄
最佳答案
0 
累计签到:1 天
连续签到:1 天
万物之逆旅 发表于 6 天前 | 显示全部楼层
kk

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐 上一条 /2 下一条

    移动客户端下载(未启用)
    微信公众号

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备11014136号

Copyright 2018 鱼C论坛 版权所有 All Rights Reserved.

Powered by Discuz! X3.1 Copyright
© 2001-2018 Comsenz Inc.    All Rights Reserved.

小黑屋|手机版|Archiver|鱼C工作室 ( 粤公网安备 44051102000370号 | 粤ICP备11014136号

GMT+8, 2018-1-21 18:19

快速回复 返回顶部 返回列表