当前位置: 首页 > news >正文

网站开发小程序开发做网站设计师要提供什么

网站开发小程序开发,做网站设计师要提供什么,平台网站建设需要什么技术,取消网站备案声明#xff1a;本案列仅供学习交流使用 任何用于非法用途均与本作者无关 需求分析: 网站:邓紫棋-mp3在线免费下载-歌曲宝-找歌就用歌曲宝-MP3音乐高品质在线免费下载 (gequbao.com) 爬取 歌曲名 歌曲 实现歌手名称下载所有歌曲 本案列所使用的模块 requests (发送…声明本案列仅供学习交流使用 任何用于非法用途均与本作者无关 需求分析: 网站:邓紫棋-mp3在线免费下载-歌曲宝-找歌就用歌曲宝-MP3音乐高品质在线免费下载 (gequbao.com)        爬取 歌曲名  歌曲 实现歌手名称下载所有歌曲   本案列所使用的模块 requests (发送HTTP请求)re(用于正则表达式匹配和处理)parsel  (解析HTML或XML文档)os (用于与操作系统进行交互如文件和目录操作) 监听数据包 打开开发者工具 F12 or 右击点击检查  点击网络点击下一页 或者往下滑CtrlF 快捷键打开搜索框 输入想要爬取的数据   分析:         通过此界面拿到所有歌曲的内页         然后点进去分析详情页的数据 点击播放按钮 监听数据包 复制下图的URL 地址到浏览器中打开 发现就会下载这个音乐文件        接着点击下载歌曲里面的下载高品质MP3 找到这个请求的数据包  后续发送请求 通过正则可以将下载链接提取出来 好的 分析完毕 我们开始写代码 老样子 右击复制 cURL(bash) 打开我们的爬虫工具          爬虫工具库-spidertools.cn       复制代码到本地Py文件          以下是实现一首歌曲的采集         发现是根据每首歌的id 来下载的歌曲 因此我们需要拿到所有下载歌曲的id         在每首歌曲的详情页 # 导包 import re import requestsheaders {accept: application/json, text/javascript, */*; q0.01,accept-language: zh-CN,zh;q0.9,en;q0.8,en-GB;q0.7,en-US;q0.6,content-type: application/x-www-form-urlencoded; charsetUTF-8,origin: https://www.gequbao.com,priority: u1, i,referer: https://www.gequbao.com/music/9653,sec-ch-ua: \Chromium\;v\128\, \Not;ABrand\;v\24\, \Microsoft Edge\;v\128\,sec-ch-ua-mobile: ?0,sec-ch-ua-platform: \Windows\,sec-fetch-dest: empty,sec-fetch-mode: cors,sec-fetch-site: same-origin,user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 Edg/128.0.0.0,x-requested-with: XMLHttpRequest } cookies {Hm_lvt_c2b69091f94cb4368f25c28fc7c2d28c: 1736209777,1736210463,HMACCOUNT: 0EB52C16E9A34AE0,Hm_lpvt_c2b69091f94cb4368f25c28fc7c2d28c: 1736210603 } url https://www.gequbao.com/api/play-url data {id: SF9bVDxXUl1RQ1heUHJe } response requests.post(url, headersheaders, cookiescookies, datadata) # 通过re正则提取 下载的url地址 down_url .join(re.findall(rurl:(.*?),response.text)[0]).replace(\\,) # 保存数据 歌曲 图片 视频 保存均为二进制的格式 content requests.get(urldown_url, headersheaders, cookiescookies, datadata).content # 以二进制的形式 进行写入保存 with open(1.mp3,wb) as f:f.write(content) 接着我们拿到所有歌曲的内页链接  里面包含歌曲的id # 发送请求 first_url https://www.gequbao.com/s/%E9%82%93%E7%B4%AB%E6%A3%8B # 后面的参数 其实就是邓紫棋 result requests.get(urlfirst_url,headersheaders,cookiescookies,datadata) print(result.text) 从返回的数据中搜索是否存在我们想要的数据  提取数据  打开元素面板 查看元素所在的位置 select parsel.Selector(result.text) lis select.css(.row .col-8.col-content) for li in lis:in_id li.css(a::attr(href)).get().split(/)[-1] 接着我们构造URL 对详情页发送请求  url fhttps://www.gequbao.com/music/{in_id} 从返回的数据中通过正则提取我们想要的数据 id resp requests.get(url, headersheaders)# print(resp.text)# 歌曲idplay_id re.findall(rwindow.play_id (.*?);, resp.text)[0]# 歌曲名字play_title re.findall(rwindow.mp3_title (.*?);, resp.text)[0]# 歌手play_author re.findall(rwindow.mp3_author (.*?);, resp.text)[0]# 因为正则提取出来的是列表 对列表进行取值 最后 还记得开始下载一首歌曲的请求嘛 对此发送请求          将我们从每首歌的详情页获取到的play_id 传进去         完整的代码如下  import requests import re import parsel import osinp input(请输入要采集的歌手:) headers {user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0 }first_url fhttps://www.gequbao.com/s/{inp} # .row .col-8.col-content a result requests.get(urlfirst_url,headersheaders) select parsel.Selector(result.text) lis select.css(.row .col-8.col-content) for li in lis:in_id li.css(a::attr(href)).get().split(/)[-1]# print(in_id)# 以上代码拿到id# 构建详情页链接url fhttps://www.gequbao.com/music/{in_id}resp requests.get(url, headersheaders)# print(resp.text)play_id re.findall(rwindow.play_id (.*?);, resp.text)[0]play_title re.findall(rwindow.mp3_title (.*?);, resp.text)[0]play_author re.findall(rwindow.mp3_author (.*?);, resp.text)[0]# print(play_id,play_title,play_author)# 下载歌曲的链接 需要传入每个歌曲的idlink https://www.gequbao.com/api/play-urldata {id: play_id}response requests.post(urllink, datadata, headersheaders)json_data response.json()# 获取json数据# 提取下载链接play_url json_data[data][url] 最后我们根据不同歌手来保存数据          需要导入os 模块 # 获取二进制数据 content requests.get(play_url, headersheaders).content# 定义文件目录filed_namefmusic\\{play_author}\\# 自动创建 文件夹if not os.path.exists(filed_name):os.makedirs(filed_name) # 以二进制的数据写入保存with open(f{filed_name} play_author play_title .mp3, wb) as f:f.write(content)print(f正在采集{play_author}{play_title}歌曲) 以下是本次案例的所有代码 仅供学习参考使用 import requests import re import parsel import osinp input(请输入要采集的歌手:) headers {user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0 }first_url fhttps://www.gequbao.com/s/{inp} # .row .col-8.col-content a result requests.get(urlfirst_url,headersheaders) select parsel.Selector(result.text) lis select.css(.row .col-8.col-content) for li in lis:in_id li.css(a::attr(href)).get().split(/)[-1]# print(in_id)# 以上代码拿到idurl fhttps://www.gequbao.com/music/{in_id}resp requests.get(url, headersheaders)# print(resp.text)play_id re.findall(rwindow.play_id (.*?);, resp.text)[0]play_title re.findall(rwindow.mp3_title (.*?);, resp.text)[0]play_author re.findall(rwindow.mp3_author (.*?);, resp.text)[0]# print(play_id,play_title,play_author)link https://www.gequbao.com/api/play-urldata {id: play_id}response requests.post(urllink, datadata, headersheaders)json_data response.json()play_url json_data[data][url]content requests.get(play_url, headersheaders).contentfiled_namefmusic\\{play_author}\\if not os.path.exists(filed_name):os.makedirs(filed_name)with open(f{filed_name} play_author play_title .mp3, wb) as f:f.write(content)print(f正在采集{play_author}{play_title}歌曲) 运行代码  本次的案例分享就到此结束啦 感谢大家的观看 您的点赞和关注是我更新的动力
http://www.zqtcl.cn/news/249726/

相关文章:

  • 网站域名注册流程办公室装修风格
  • a站免费最好看的电影片推荐方正隶变简体可以做网站用么
  • 创同盟做网站找公司做网站需要咨询什么问题
  • 西安行业网站株洲高端网站建设
  • 优化网站流量商城网站建设软件
  • dw属于什么的网页制作工具网络建站优化科技
  • 百度网站首页的设计理念南京高新区规划建设局网站
  • 虚拟机做实验的网站网站以个人名义备案
  • 自定义表单网站网站建设营销型号的区别
  • 有个网站做彩盒的贵阳网站建设托管
  • 网站制作属于什么专业做网站需要什么配置服务器吗
  • 网站开发学习培训广州网站优化关键词公司
  • 毕节金海湖新区城乡建设局网站企业网站的步骤
  • 网站后台设计教程网站建设判断题
  • 珠海网站建设 金蝶天元建设集团有限公司李华
  • 海安市建设局网站成都官网seo技术
  • 网站建设策划书结束语wordpress付费版
  • 进口网站建设做网站用什么格式的图片
  • 青海省住房和城乡建设部网站进入网站空间
  • 做公司简介的开源网站企业seo多少费用
  • 学校网站建设工作方案昆明做网站词排名优化
  • 镇江企业做网站针对人群不同,网站做细分
  • 个人单页网站建设台州网站建设惠店
  • 专做婚礼logo的网站做搜狗pc网站快速排
  • 北京网站建设公司分享网站改版注意事项做网站需要多大空间
  • 主机网站建设制作天津西青区天气预报
  • 网站没有内容可以备案吗横向网站源码
  • 做的网站浏览器提示不安全站优化
  • dede移动端网站源码电子商务网站建设开题报告
  • 做网站价格多少优质做网站哪家好