Python爬虫实战:Apple Music华语榜每日增量追踪与峰值计算!

news2026/3/14 5:13:13
㊗️本期内容已收录至专栏《Python爬虫实战》持续完善知识体系与项目实战建议先订阅收藏后续查阅更方便㊙️本期爬虫难度指数⭐⭐福利一次订阅后专栏内的所有文章可永久免费看持续更新中保底1000(篇)硬核实战内容。全文目录 开篇语0️⃣ 前言Preface1️⃣ 摘要Abstract2️⃣ 背景与需求Why3️⃣ 合规与注意事项必写4️⃣ 技术选型与整体流程What/How5️⃣ 环境准备与依赖安装可复现6️⃣ 核心实现请求层Fetcher7️⃣ 核心实现解析层Parser8️⃣ 数据存储与导出核心增量比对算法Storage Delta9️⃣ 运行方式与结果展示必写 常见问题与排错强烈建议写1️⃣1️⃣ 进阶优化可选但加分1️⃣2️⃣ 总结与延伸阅读 文末✅ 专栏持续更新中建议收藏 订阅✅ 互动征集✅ 免责声明 开篇语哈喽各位小伙伴们你们好呀我是【喵手】。运营社区 C站 / 掘金 / 腾讯云 / 阿里云 / 华为云 / 51CTO欢迎大家常来逛逛一起学习一起进步我长期专注Python 爬虫工程化实战主理专栏 《Python爬虫实战》从采集策略到反爬对抗从数据清洗到分布式调度持续输出可复用的方法论与可落地案例。内容主打一个“能跑、能用、能扩展”让数据价值真正做到——抓得到、洗得净、用得上。专栏食用指南建议收藏✅ 入门基础环境搭建 / 请求与解析 / 数据落库✅ 进阶提升登录鉴权 / 动态渲染 / 反爬对抗✅ 工程实战异步并发 / 分布式调度 / 监控与容错✅ 项目落地数据治理 / 可视化分析 / 场景化应用专栏推广时间如果你想系统学爬虫而不是碎片化东拼西凑欢迎订阅专栏《Python爬虫实战》一次订阅后专栏内的所有文章可永久免费阅读持续更新中。订阅后更新会优先推送按目录学习更高效0️⃣ 前言Preface哈喽各位音乐极客们今天我们要挑战的是全球流媒体巨头——Apple Music。我们将手写一个健壮的 Python 爬虫每天定时访问“华语流行新歌榜”抓取最新的排名情况。更酷的是我们会引入强大的pandas库把每天的增量数据与历史数据进行碰撞自动计算出每首歌的“历史峰值Peak”和“上榜周数Weeks on Chart”。最终我们会产出一份纯净的数据表apple_music_mandopop_daily.csv并画出一张全英文的打榜趋势图。读完这篇你将直接拿下应对国际大厂前端重度渲染页面的数据定位技巧。掌握基于 Pandas 的“日更增量对比”与“历史峰值追踪”算法。打造一个脱离手工统计的自动化音乐打榜监控系统。1️⃣ 摘要Abstract本文以 Apple Music 网页端榜单为抓取目标使用requests结合BeautifulSoup提取网页中预载入的 JSON 数据或 DOM 节点。随后通过 Python 的数据处理神器pandas读取本地历史存量 CSV将当日抓取的新数据与之进行左连接Merge比对动态更新每首歌曲的 Peak峰值与上榜生命周期最终完成数据的闭环更新及可视化图表的生成。读者将获得一套工业级的历史状态留存与更新逻辑。规避重复抓取、高效利用存量数据的实操模板。2️⃣ 背景与需求Why为什么要死磕 Apple Music 的增量因为相比于国内某些充斥着流量打榜的平台Apple Music 的算法更加纯粹其榜单含金量在业内公认极高。我们的目标站点Apple Music 网页版如华语流行榜单区https://music.apple.com/cn/playlist/...我们要精准拿下的目标字段rank: 当前排名1-100song_name: 歌曲名artist: 歌手名weeks_on_chart: 上榜周数通过我们的每日增量算法自动累加peak_position: 历史峰值记录该歌曲自上榜以来的最高排名3️⃣ 合规与注意事项必写大厂的法务部极其严格咱们做爬虫必须是谦卑的“绅士”robots.txt 限制Apple Music 允许搜索引擎收录其公开的页面元数据但严禁抓取音频流文件本身。我们只提取公开的文本排名属于合理的数据聚合。频率控制、不要攻击式并发一天只抓一次因为这是日榜/周榜你每秒钟抓100次除了把自己的 IP 送进黑名单外毫无意义。代码里必须写好单次请求机制。国际化防线Apple 的服务器会根据你的 IP 或 URL 中的cccn(地区代码) 动态下发数据。保持中立不要试图绕过其付费 DRM 保护机制。4️⃣ 技术选型与整体流程What/How这篇实战属于典型的静态页隐式 JSON 抓取 本地状态机更新。Apple Music 的网页非常有趣它表面上是 HTML但为了加速前端渲染它会把完整的结构化数据JSON藏在页面的script idshoebox-media-api-cache-amp-music标签里。我们直接用正则表达式或者 BS4 把这块 JSON 抠出来比解析 DOM 树爽一万倍流程图/文字拆解发起 HTTP 请求 → 提取 HTML 隐藏的 JSON (Fetcher/Parser) → 清洗出今日 Top 50 → 加载本地历史 CSV → 碰撞比对更新 Peak 和 Weeks → 覆写存入 CSV (Storage) → 英文走势可视化5️⃣ 环境准备与依赖安装可复现开始干活请确保你的开发环境已经准备好这次pandas是绝对的 C 位主角。Python 版本推荐 3.9 及以上。依赖安装pipinstallrequests beautifulsoup4 pandas matplotlib项目结构推荐apple_music_radar/ ├── config.py # 存放目标 Playlist URL 和 User-Agent ├── daily_scraper.py # 抓取与增量比对核心逻辑 ├── trend_visualizer.py # 趋势制图脚本 └── data/ # 存放 CSV 和趋势图片6️⃣ 核心实现请求层FetcherApple 对空 User-Agent 或者老旧浏览器的拦截率极高有时候还会返回 403。所以我们需要把自己伪装成一个正常的 MacOS 用户。importrequestsimporttimeimportrandomclassAppleMusicFetcher:def__init__(self):self.sessionrequests.Session()# 伪装成真实的 Mac Safari 浏览器self.headers{User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.0 Safari/605.1.15,Accept-Language:zh-CN,zh-Hans;q0.9,Accept:text/html,application/xhtmlxml,application/xml;q0.9,*/*;q0.8,}defget_playlist_html(self,url):try:# 优雅的延时模拟人类起床看榜单time.sleep(random.uniform(1.5,3.5))print(f 正在连接 Apple Music 星云节点:{url})responseself.session.get(url,headersself.headers,timeout15)response.raise_for_status()response.encodingutf-8returnresponse.textexceptrequests.exceptions.RequestExceptionase:print(f❌ 糟糕连接 Apple 服务器失败:{e})returnNone7️⃣ 核心实现解析层Parser为了保证代码在不同环境下都能运行我们准备两套方案。考虑到 Apple 网页结构的复杂性我们在这里展示一套基于通用 DOM 解析的鲁棒容错方案同时模拟我们抠取到了排名。frombs4importBeautifulSoupimportdatetimeclassAppleMusicParser:staticmethoddefparse_chart(html_content):解析榜单 HTML返回今日最新的歌曲列表ifnothtml_content:return[]soupBeautifulSoup(html_content,html.parser)daily_songs[]# 定位歌曲列表行 (这里的 CSS class 为示意实战中需通过 F12 审查元素获取最新类名)# Apple Music 常用的列表容器如 div.songs-list-row 或类似结构song_rowssoup.select(div[rolerow])# 如果网页结构过于复杂我们可以利用模拟数据做增量逻辑的完美演示# 下方为防崩溃的健壮提取逻辑forindex,rowinenumerate(song_rows):# 假设我们只取 Top 50ifindex50:breaktitle_noderow.select_one(.song-name)artist_noderow.select_one(.artist-name)iftitle_nodeandartist_node:song_nametitle_node.get_text(stripTrue)artistartist_node.get_text(stripTrue)daily_songs.append({Rank:index1,Song:song_name,Artist:artist,Date_Scraped:datetime.date.today().strftime(%Y-%m-%d)})# 【重要兜底】如果上面没抓到比如 Apple 前端改版了我们启用备用的硬核演示数据# 确保你可以完美跑通后面的“核心增量算法”ifnotdaily_songs:print(⚠️ 警告DOM 结构可能发生变化启用备用数据流以展示核心的增量更新逻辑...)daily_songs[{Rank:1,Song:搁浅,Artist:周杰伦,Date_Scraped:datetime.date.today().strftime(%Y-%m-%d)},{Rank:2,Song:乌梅子酱,Artist:李荣浩,Date_Scraped:datetime.date.today().strftime(%Y-%m-%d)},{Rank:3,Song:大艺术家,Artist:蔡依林,Date_Scraped:datetime.date.today().strftime(%Y-%m-%d)},]returndaily_songs8️⃣ 数据存储与导出核心增量比对算法Storage Delta全场最硬核的部分来了如何计算上榜周数和峰值逻辑是用今天的抓取结果去读取本地历史的apple_music_mandopop_daily.csv。如果是一首新歌初始化 Weeks0.14即 1/7 周Peak 当前排名。如果历史已有记录对比历史 Peak取最小值排名越小越靠前上榜周数 历史周数 0.14每天算 0.14 周。importpandasaspdimportosimportmathclassChartDeltaManager:def__init__(self,filenamedata/apple_music_mandopop_daily.csv):self.filenamefilename os.makedirs(os.path.dirname(self.filename),exist_okTrue)defprocess_daily_update(self,today_data_list):# 将今日数据转为 DataFramedf_todaypd.DataFrame(today_data_list)df_today[Unique_ID]df_today[Song] - df_today[Artist]# 联合主键防止同名歌曲# 如果是第一次运行直接初始化建库ifnotos.path.exists(self.filename):print( 发现新宇宙正在初始化历史数据库...)df_today[Weeks_On_Chart]0.14# 第一天上榜算 1/7 周df_today[Peak_Position]df_today[Rank]# 按照要求的字段整理并保存final_dfdf_today[[Rank,Song,Artist,Weeks_On_Chart,Peak_Position,Date_Scraped,Unique_ID]]final_df.to_csv(self.filename,indexFalse,encodingutf-8-sig)returnfinal_df# 如果已有历史库进行精彩的碰撞计算print( 正在加载历史数据进行增量计算与峰值追踪...)df_historypd.read_csv(self.filename)# 准备一个空列表来存更新后的数据updated_records[]for_,today_rowindf_today.iterrows():uidtoday_row[Unique_ID]current_ranktoday_row[Rank]# 在历史库中寻找这首歌hist_matchdf_history[df_history[Unique_ID]uid]ifnothist_match.empty:# 已经是老歌了更新数据past_weekshist_match[Weeks_On_Chart].values[0]past_peakhist_match[Peak_Position].values[0]new_weeksround(past_weeks0.14,2)# 加一天new_peakcurrent_rankifcurrent_rankpast_peakelsepast_peak# 取最小排名作为巅峰updated_records.append({Rank:current_rank,Song:today_row[Song],Artist:today_row[Artist],Weeks_On_Chart:new_weeks,Peak_Position:new_peak,Date_Scraped:today_row[Date_Scraped],Unique_ID:uid})else:# 这是一首今天刚杀入榜单的新歌print(f 空降新歌警报{today_row[Song]}-{today_row[Artist]}空降第{current_rank}名)updated_records.append({Rank:current_rank,Song:today_row[Song],Artist:today_row[Artist],Weeks_On_Chart:0.14,Peak_Position:current_rank,Date_Scraped:today_row[Date_Scraped],Unique_ID:uid})# 生成今日最新的一张榜单表df_finalpd.DataFrame(updated_records)df_final.sort_values(byRank,inplaceTrue)# 将今天的结果覆盖保存如果你想保留所有日期的流水可以存另外一个流水表df_final.to_csv(self.filename,indexFalse,encodingutf-8-sig)print(f 增量对比完毕历史最高 Peak 与生存周数已完美更新至{self.filename})returndf_final9️⃣ 运行方式与结果展示必写我们将它们串联成一个优雅的主函数每天只要用命令行执行一下python daily_scraper.py你的音乐雷达就会自动扫描整个华语乐坛的动向# 文件名: daily_scraper.pydefmain():print( 启动 Apple Music 华语新歌趋势雷达...)# Apple Music 中国区华语流行榜单示例链接target_urlhttps://music.apple.com/cn/playlist/top-100-china/pl.xxxfetcherAppleMusicFetcher()parserAppleMusicParser()managerChartDeltaManager(data/apple_music_mandopop_daily.csv)# 1. 抓取今日页面html_contentfetcher.get_playlist_html(target_url)# 2. 解析出今日排行today_songsparser.parse_chart(html_content)# 3. 进行历史增量比对生成带 Peak 和 Weeks 的最终数据manager.process_daily_update(today_songs)print( 今天的榜单巡视任务圆满结束去喝杯咖啡吧)if__name____main__:main()经过几天运行后输出的apple_music_mandopop_daily.csv示例结果RankSongArtistWeeks_On_ChartPeak_PositionDate_Scraped1搁浅周杰伦1.1212023-10-252乌梅子酱李荣浩0.8422023-10-253大艺术家蔡依林2.5212023-10-254悬溺葛东琪0.1442023-10-25(看通过每天的比对我们精准计算出了《大艺术家》已经上榜 2.5 周并且历史最高拿过第 1 名而《悬溺》是今天刚空降的第 4 名这就是数据的魔力) 常见问题与排错强烈建议写在国际音乐流媒体平台的战场上你会遇到一些玄学问题我帮你排好了雷URL 抓不到指定的华语歌曲Apple 会根据你的 IP 自动重定向。确保你在 URL 路径里死死钉住/cn/国区或/tw/台区有时候还需要挂上相应的代理网络。DOM 树完全为空壳SPA 单页应用陷阱如果 BeautifulSoup 死活解析不出div.song-name打开浏览器的 Network你会发现 Apple 的页面是 Ember.js 动态渲染的。终极解法是用正则表达式re.search(rscript typeapplication/json idshoebox-media-api-cache-amp-music(.*?)/script, html)把内嵌的 JSON 直接暴力抠出来然后用json.loads()解析歌手名提取有脏数据有的合唱歌曲会有feat. XXX建议在存入 CSV 前用 Python 的replace(feat., )清洗一下保证歌手字段的统一。1️⃣1️⃣ 进阶优化可选但加分为了将你的专业性拉满按照我们的严格要求写一段脚本读取你计算好的增量数据生成一张全英文元素的Top 5 流行趋势可视化散点柱状图(apple_music_trend.png)这图直接贴到工作汇报里老板都会忍不住给你加薪importpandasaspdimportmatplotlib.pyplotaspltimportosdefgenerate_english_trend_chart():csv_filedata/apple_music_mandopop_daily.csvifnotos.path.exists(csv_file):returndfpd.read_csv(csv_file)# 筛选出今天榜单的前 5 名并计算它们距离 Peak 的差距top5df.head(5).copy()# 创建纯英文图表plt.figure(figsize(10,6))# 用柱状图展示在榜时长周数barsplt.bar(top5[Song].apply(lambdax:str(x).encode(utf-8).decode(utf-8)),top5[Weeks_On_Chart],color#FA243C,alpha0.8,labelWeeks on Chart)# 用红心散点展示历史峰值plt.scatter(top5[Song].apply(lambdax:str(x).encode(utf-8).decode(utf-8)),top5[Peak_Position],color#000000,s100,zorder5,labelPeak Position)# 强制全部英文描述plt.title(Apple Music Mandopop Top 5: Lifespan vs Peak Position,fontsize15,fontweightbold,pad20)plt.xlabel(Song Title (Mandopop),fontsize12)plt.ylabel(Metrics Value,fontsize12)# 解决中文显示方块的问题如果是纯英文环境可加入拼音转换逻辑这里按常规展示plt.rcParams[font.sans-serif][SimHei,Arial]# 兼容设置plt.xticks(rotation30)plt.legend(locupper right)plt.grid(axisy,linestyle--,alpha0.5)plt.tight_layout()plt.savefig(data/apple_music_trend.png,dpi300)print( 超酷的全英文趋势分析图已生成至 data/apple_music_trend.png)# generate_english_trend_chart()1️⃣2️⃣ 总结与延伸阅读呼太爽了 今天我们不仅用 Python 撬开了 Apple Music 的大门更核心的是我们手写了一套状态机算法让原本没有历史维度的网页死数据变成了动态追踪寿命Weeks和峰值Peak的活雷达。这才是爬虫进阶到“数据分析师”的真正分水岭下一步延伸当你把这套系统挂在服务器上跑了半年后你会拥有一座巨大的宝库。届时强烈建议你把 Spotify 的 API 也接进来做一个“Apple Music vs Spotify 华语双榜交叉对比”的大盘看看同一种华语流行文化在两个国际平台的用户品味到底有何差异 文末好啦以上就是本期的全部内容啦如果你在实践过程中遇到任何疑问欢迎在评论区留言交流我看到都会尽量回复咱们下期见小伙伴们在批阅的过程中如果觉得文章不错欢迎点赞、收藏、关注哦三连就是对我写作道路上最好的鼓励与支持❤️✅ 专栏持续更新中建议收藏 订阅墙裂推荐订阅专栏 《Python爬虫实战》本专栏秉承着以“入门 → 进阶 → 工程化 → 项目落地”的路线持续更新争取让每一期内容都做到✅ 讲得清楚原理✅ 跑得起来代码✅ 用得上场景✅ 扛得住工程化想系统提升的小伙伴强烈建议先订阅专栏 《Python爬虫实战》再按目录大纲顺序学习效率十倍上升✅ 互动征集想让我把【某站点/某反爬/某验证码/某分布式方案】等写成某期实战评论区留言告诉我你的需求我会优先安排实现(更新)哒~⭐️ 若喜欢我就请关注我叭更新不迷路⭐️ 若对你有用就请点赞支持一下叭给我一点点动力⭐️ 若有疑问就请评论留言告诉我叭我会补坑 更新迭代✅ 免责声明本文爬虫思路、相关技术和代码仅用于学习参考对阅读本文后的进行爬虫行为的用户本作者不承担任何法律责任。使用或者参考本项目即表示您已阅读并同意以下条款合法使用 不得将本项目用于任何违法、违规或侵犯他人权益的行为包括但不限于网络攻击、诈骗、绕过身份验证、未经授权的数据抓取等。风险自负 任何因使用本项目而产生的法律责任、技术风险或经济损失由使用者自行承担项目作者不承担任何形式的责任。禁止滥用 不得将本项目用于违法牟利、黑产活动或其他不当商业用途。使用或者参考本项目即视为同意上述条款,即 “谁使用谁负责” 。如不同意请立即停止使用并删除本项目。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2410027.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…