码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 只用二十行代码,用Python实现获取网抑云榜单文件保存本地,非常简单...


    文章目录

    • 序言
    • 你需要准备
    • 代码实现

    序言

    哈喽,大家好,今天咱们试试只用20行代码来实现批量获取网抑云文件保存本地,炒鸡简单!

    悄悄的告诉你,其实不到20行代码~

    你需要准备

    本次使用的环境是Python3.8,编辑器是pycharm ,没有安装的小伙伴,看我置顶文章有教程。

    模块使用的是requests、re、os 三个,其中requests是第三方模块,需要手动安装一下,re、os都是内置模块,不需要安装。

    pip install requests 即可,不会安装的我置顶文章也有详细教程,这里就不过多讲了。

    或者直接在文章末尾点名片拿一下软件和安装教程也是可以的。

    浏览器开发者工具

    对于实现爬虫而言,咱们需要学会如何使用开发者工具。对此很多小伙伴都不会,因为每个浏览器的开发者工具细节上多少有一些差别,我建议都用谷歌浏览器,英文看不懂的话可以调成中文。

    打开开发者工具,点击省略号,点击 shortcuts

    在这里插入图片描述

    依次点击 preferences - language ,直接拉到最下方选择中文即可。

    代码实现

    本次实现步骤大致分为以下五步:

    1. 发送请求
    2. 获取数据
    3. 解析数据
    4. 保存数据

    这里我就不讲怎么分析开发者工具了,下次做一个详细的教程,讲解开发者工具。

    模块导入

    import requests  # 数据请求模块
    import re  # 正则表达式模块
    import os   # 文件操作模块
    
    • 1
    • 2
    • 3

    发送请求

    url = 'https://music.163.com/discover/toplist?id=3778678'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'
    }
    response = requests.get(url=url, headers=headers)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    获取数据

    result = re.findall('
  • (.*?)
  • '
    , response.text) for music, title in result: music_url = f'http://music.163.com/song/media/outer/url?id={music}.mp3' music_content = requests.get(url=music_url, headers=headers).content
    • 1
    • 2
    • 3
    • 4

    保存数据

    with open(filename + title + '.mp3', mode='wb') as f:
        f.write(music_content)
        print(title)
    
    • 1
    • 2
    • 3

    当然这只是最简单的爬取榜单音乐,评论、歌词等等都可以爬取,还有制作词云图、通过搜索下载,音乐下载器,等等各种实现下载的方式。

    好了,今天的分享就到这里,完整代码下方名片获取哈~

    推荐一套教程:代码总是学完就忘记?100个爬虫实战项目!让你沉迷学习丨学以致用丨下一个Python大神就是你!

  • 相关阅读:
    大O的渐近表示法经典题目
    加速推进企业信息化建设,SRM采购系统赋能建筑工程产业生态链实现数字化转型
    C# Winform编程(7)文件处理技术
    php对参数校验(名称、地址、掩码、日期、时间、端口)
    ROS机器人小车建模仿真与SLAM
    对std::unique_ptr 的误解
    向毕业妥协系列之机器学习笔记:决策树(一)
    学习笔记19--自动驾驶智能化指标评测体系(下)
    翻译Excel文档名不求人:详细指南
    SpringBoot整合redis的基本操作
  • 原文地址:https://blog.csdn.net/fei347795790/article/details/126468372
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号