面试须知,Python爬取网易云音乐1万条评论,腾讯、网易必问的20道题Python面试题-程序员宅基地

技术标签: 2024年程序员学习  面试  python  职场和发展  

首先,我们用电脑打开网易云音乐这条视频的链接。找到最新评论,目标就是把这些评论全部取出来。接着发现每点击“下一页”,网站的url并没有任何变化,说明整个评论区的内容都是通过Ajax异步请求技术得到的。关于这个概念大家可以百度,简单来说就是能够实现在后台与服务器交换数据,在不重新加载页面的情况下更新网页。打开浏览器F12,进入开发者工具,选择Network,我们选择XHR(XmlHttpRequest)就可以选出Ajax的请求包:

在这里插入图片描述

然后再一个个点进去查看response,就能找到包含评论的数据包️

在这里插入图片描述

点进去就能看到header信息

在这里插入图片描述

可以发现是一个post请求并且接收两个参数params以及encSecKey

在这里插入图片描述

我们先来试试看

import requests

import json

url = ‘https://music.163.com/weapi/v1/resource/comments/R_VI_62_3F79C7B87510106B8118EE3F811C1BC5?csrf_token=’

headers = {

‘User-Agent’:‘Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36’,

‘Referer’:‘https://music.163.com/video?id=3F79C7B87510106B8118EE3F811C1BC5&userid=265996751’,

‘Origin’:‘http://music.163.com’,

‘Host’:‘music.163.com’

}

user_data = {

‘params’: ‘fphfDEFeIs3I+ybqkBQhWxvB8GFOB0RMrmOS1VfB9ljX0CWccYd5WPdfRk6iaPuhllQcpKweUTwKc7GyZZENbB99O3C/vdhEeChuxLK8Rl40hb/ipmhXIxbJ1KRMemNFF+jTQqdFUnw3HNdrUqSzjmfh/HP630vmp4HVL6i+oSDygse0C1JUgS5d5Six93R7r8b3tKUCnPw/JJbH3AXTlA==’,

‘encSecKey’: ‘a658168c2225f0dfe46e9b260abb348691c42946ec46e6f4a5c434e86d6d546da0fcb7de0dba750422c40064b026169a453f5e42c59f63c38c7749c0e81023dd27978f1e5d97b6c97fa70df347737b51a69fc15b49b2e3e209c53eefcf7d795b6344404811e84761c700422ef57a427e84bc77adece15146ca62033b3f2aacfd’

}

response = requests.post(url,headers=headers,data=user_data)

可以发现能够取到这一页的评论信息

在这里插入图片描述

但是这只能拿到当前这一页的评论。那么怎样获取全部的评论信息呢,之前我们说过,点击下一页的时候只刷新评论,而不会重新加载页面。通过测试我们发现点击下一页时候只有 params和encSecKey会改变,那么接下来的问题就是就是搞明白这两个参数是怎样变化的。还好已经有知乎大神[1]给出了加密过程的解析与还原代码,所以我们直接拿过来用就可以。整个过程比较复杂,每个参数经过两次加密涉及到四个不同参数。由于篇幅原因完整的代码可以在早起python公众号内回复音乐获取。那么最后是将所有评论全部爬取下来。

在这里插入图片描述

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
img

在这里插入图片描述

感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
[外链图片转存中…(img-hArCg790-1712613123771)]

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_58846287/article/details/137533003

智能推荐

【mysql】MySQL性能优化建议整理_组长说考虑性能让我加索引-程序员宅基地

文章浏览阅读558次。【前言】 组长前段时间给了个任务让研究下如何优化Mysql性能, 于是我就在网上搜索了些资料,整合了一下分享给大家。【正文】1.减少不使用查询缓存的查询语句 大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续_组长说考虑性能让我加索引

【闲谈】如何统计字符串中出现最多的字母与个数-程序员宅基地

文章浏览阅读291次。前言闲来无事,穷折腾。最近我朋友在找工作,遇到一些面试题,或者遇到一些问题会及时跟我讨论。我则作为他的幕后军师,为他出谋划策。接下来我分享给大家一道简单的面试题。题目统计字符串中出现最多的字母与个数?分析1、验证数据是否字符串2、字符串转换为数组3、统计字符串出现的次数例:var str = 'aaaadddddssssgdhssssbbbbbuuuwmopqlsabcfws..._统计字符串中字母个数或统计最多字母数。

生鲜农产品冷链物流配送路径优化模型构建及算法实现_配送仓库设计算法模型有哪些-程序员宅基地

文章浏览阅读5.4k次,点赞13次,收藏111次。摘要:本案例讲述的案例为生鲜农产品冷链物流配送路径优化,涉及的目标函数成本包括碳排放成本、固定成本、运输成本、货损变质成本、时间惩罚成本。目标种类:单目标模型。求解方法:基础版蚁群算法+改进版蚁群算法。整体对标层级:硕士_配送仓库设计算法模型有哪些

【EI会议征稿通知】第八届可再生能源与发展国际研讨会(IWRED 2024)_第八届可再生能源与发展国际研讨会(iwred 2024)口号和使命-程序员宅基地

文章浏览阅读579次,点赞27次,收藏23次。面向能源与环境需求,长期从事新能源材料与器件领域,重点围绕电化学能源存储与转化方向的关键材料与器件设计(包括锂/钠离子电池、超级电容器、全解水制氢、燃料电池、新型能源存储与转化器件等)。根据斯坦福大学的数据,他是2019年、2020年和2021年世界上前2%被引用最多的研究人员。他也是IEEE高级会员。会议将聚集相关领域内的专家学者和科研人员,围绕“能源中的光学材料”、“光伏发电”、“能源并网技术”等能源再生和发展研究展开讨论,共享研究成果和前沿技术,探讨发展趋势,扩宽科研思路,推进学术成果朝产业化发展。_第八届可再生能源与发展国际研讨会(iwred 2024)口号和使命

java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal-程序员宅基地

文章浏览阅读1.4k次。BigDecimal计算错误问题_java.lang.arithmeticexception: non-terminating decimal expansion; no exact r

系统集成资质-软件项目采购的问题与对策-程序员宅基地

文章浏览阅读139次。作者:邓子云[email protected] 转载请注明此处在一些传统行业项目的采购活动已经有比较成熟的管理体制和标准,例如机械工程项目或建筑工程项目等,但是软件项目的采购与外包管理工作尚未形成完备的管理体制和标准。 软件产品作为一种特殊的产品,具有高度地不可测量性和可变性。而软件企业的运作方式差别很大,许多软件企业软件能力成熟度不高,大部分企业还处于手工..._软件开发集成不专门面向中小企业采购原因

随便推点

Python AttributeError: module 'string' has no attribute 'atoi'-程序员宅基地

文章浏览阅读7.1k次。python2 中可以用string.atoi 在python3中会报错替换的方案是string.atoi(your_str)替换为int(your_str)这个代码python2和python3都可以运行._module 'string' has no attribute 'atoi

大模型内容分享(二十八):mnn-llm: 大语言模型端侧CPU推理优化_大模型 llm 推理详解 prefill decode-程序员宅基地

文章浏览阅读1.4k次,点赞23次,收藏19次。在大语言模型(LLM)端侧部署上,基于 MNN 实现的 mnn-llm 项目已经展现出业界领先的性能,特别是在 ARM 架构的 CPU 上。目前利用 mnn-llm 的推理能力,qwen-1.8b在mnn-llm的驱动下能够在移动端达到端侧实时会话的能力,能够在较低内存(_大模型 llm 推理详解 prefill decode

python panda读取excel_python pandas模块简单使用(读取excel为例)-程序员宅基地

文章浏览阅读323次。第一步:模块安装pip install pandas第二步:使用(单个工作表为例)说明:如果有多个工作表,那么只要指定sheetname=索引,(第一个工作表为0,第二个工作表为1,以此类推)pd.read_excel(io, sheetname=0,header=0,skiprows=None,index_col=None,names=None,arse_cols=None,date_parse..._webui自动化 使用panda 读取某个单元格的数据 底层封装

iOS面试了20几家总结出来的面试题_coupang算法面经-程序员宅基地

文章浏览阅读839次。标题iOS面试题本面试题为个人使用版本,如后续流传出去,请转发的朋友务必注释一下,答案正确性有待商榷,本人的答案不代表权威,仅仅是个人理解。 文章内部有写混乱,将就着看吧。另外大部分图片加载不出来,,MARKDown格式也不太统一(各平台不一样),由于博主太懒不想改,不过不影响最终效果。标题更新日志2020年08月17日 更新了第23条的新的引申,关于NSTimer循环引用的根本原因, 以及优化方案标题一、硬技术篇1.对象方法和类方法的区别?对象方法能个访问成员变量。类方法中不能直接调用_coupang算法面经

前人种树3-华电编译技术课程设计-程序员宅基地

文章浏览阅读897次,点赞18次,收藏22次。华电编译技术课程设计实验

python重复上一条语句_python循环语句和跳出语句详解-程序员宅基地

文章浏览阅读1k次。两条循环语句:while语句、for语句While语句:作用:根据一定条件,重复执行一条语句或多条语句语法:while 真值表达式:语句块1else: (else语句可以省略)语句块2说明:1、先判断真值表达式,为True或False2、如果为True,则执行语句块1,再回到第一步3、如果为False,则执行语句块2,然后结束此while的执行4、else字句部可以省略注意事项:要控制..._python中循环上一句

推荐文章

热门文章

相关标签