博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
爬虫大作业
阅读量:4921 次
发布时间:2019-06-11

本文共 1637 字,大约阅读时间需要 5 分钟。

按照作业要求先找到自己感兴趣的网页进行爬取

找到相应位置就进行爬取

import requestsimport jsonimport osimport threading#发送请求获取信息def get_response(url):    headers = {        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'    }    response = requests.get(url=url, headers=headers).content    return response#保存文件def save_mp3(music_name,res,word):    filePath = os.path.join(os.getcwd(), './mp3/' + word)    if not os.path.exists(filePath):        print('路径不存在')        os.makedirs(filePath)        print('创建成功')        with open('./mp3/' + word + "/" + music_name + ".m4a", "wb") as file:            file.write(res)    else:        with open('./mp3/' + word + "/" + music_name + ".m4a", "wb") as file:            file.write(res)#发送请求def send_request():    word = 'exodus'    res1 = requests.get(        'https://c.y.qq.com/soso/fcgi-bin/client_search_cp?&lossless=0&flag_qc=0&p=1&n=20&w=' + word)    jm1 = json.loads(res1.text.strip('callback()[]'))    list_url = []    re = jm1['data']['song']['list']    for j in re:        try:            list_url.append((j['songmid'], j['songname'].replace('/',''), j['singer'][0]['name']))        except:            print('wrong')    for i in list_url:        print("开始下载 %s" %i[1])        res = get_response("http://ws.stream.qqmusic.qq.com/C100"+i[0]+".m4a?fromtag=0")        #save_mp3(i[1],res,word)        thr = threading.Thread(target=save_mp3, args=(i[1],res,word))        # 启动线程        thr.start()        print("下载完成")    print("done")send_request()

  找到QQ音乐的搜索歌曲API

此接口获取搜索的歌曲

执行结果

生成词云

 

转载于:https://www.cnblogs.com/sewhen/p/8932869.html

你可能感兴趣的文章
查找目录下的所有文件中是否含有某个字符串 linux
查看>>
2018年各大互联网前端面试题四(美团)
查看>>
一起学Python:字符串介绍
查看>>
学习笔记:树状数组
查看>>
洛谷P1772 [ZJOI2006]物流运输 题解
查看>>
CF519E A and B and Lecture Rooms
查看>>
python-redis之数据类型二
查看>>
Java类加载机制
查看>>
数据库的最简单实现
查看>>
循环单链表实现
查看>>
Android设计模式实战---责任链模式
查看>>
剑指Offer_31_整数中1出现的次数(从1到n整数中1出现的次数)
查看>>
10月29日 迅雷会员vip账号分享 91freevip 晚间21:00更新
查看>>
【一题多解】Python 字符串逆序
查看>>
open ball、closed ball 与 open set、closed set(interior point,limit point)、dense set
查看>>
字典(dictionary)与映射(map)
查看>>
Python 编程规范 —— TODO 注释(结合 PyCharm)
查看>>
十万个为什么 —— 名词解释(体育)
查看>>
table的设置(w3c)
查看>>
冲刺一
查看>>