先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注Python)
正文
首先爬虫常规操作找到目标数据的接口位置,打开抓包工具查看数据的加载方式,打开抓包工具的一瞬间数据没了
当前网页应该是做了开发者工具检测,把抓包工具以单独页面打开
单独打开就没有什么问题了,找到文件接口数据确定请求的url地址
数据的接口
https://edit.newrank.cn/xdnphb/editor/articleMaterial/searchArticleMaterial
当前接口的请求方式为post,post请求就意味着需要传递数据
item能明显看出来数据数据加载的格式、日期、种类,数据的翻页就是通过日期来进行,nonece和xyz是加密数据,进行简单判断nonece、xyz应该都是md5加密 先找到nonece、xyz的加密位置,可以通过全局搜索也可以xhr断点调试的方法,只要能找到数据的加密位置就行,辣条这里就直接通过xhr断点找寻数据的发送位置
通过抓包工具右边的call stack找到后续的执行过程一个个点击查看找到发送数据的是在哪里生成的 传递的data数据为h 现在我们只需要找到h的生成位置就好了,h是由u得来的u是c函数生成的,nonece,zyz就是是在c函数生成
给位置数据打上断点,查看数据的加载规律,nonece为u方法生成的9个参数里的随机值
xyz加密的数据是o加上&nonece和nonece的值,o的参数是网址加上appkey在加上item的值
“/xdnphb/editor/articleMaterial/searchArticleMaterial?AppKey=joker&item={“type”:“lakh”,“period”:“1#2021-09-18”,“order”:“2”,“extra”:“全部”,“ranklist_id”:”“,“weixin_id”:”“,“start_time”:“2021-09-18”}&nonce=6a65cad87”
xyz加密的代码有点多,这是何等的卧槽
直接补环境好了,不去硬扣js代码了复制js代码到本地,先把加密函数给拿过来,把整个t函数拿到本地,自己运行尝试一下
大功告成,数据的加密方式,加密规则都解决了,现在用Python整合,对目标网址发送请求,获取数据进行保存,各位大佬js源码可以自行扣取,只要t函数就可以了。
效果展示
简易源码分享
import execjs
import requests
import csv
nonce = execjs.compile(open(‘nonce.js’).read()).call(‘u’)
date = input(‘请输入你需要的日期(2021-07-19):’)
xyz_code = ‘/xdnphb/editor/articleMaterial/searchArticleMaterial?AppKey=joker&item={“type”:“lakh”,“period”:“1#%s”,“order”:“2”,“extra”:“全部”,“ranklist_id”:“”,“weixin_id”:“”,“start_time”:“2021-09-04”}&nonce=%s’ % (date, nonce)
print(xyz_code)
xyz = execjs.compile(open(‘nonce.js’).read()).call(‘t’, xyz_code)
print(xyz)
url = “https://edit.newrank.cn/xdnphb/editor/articleMaterial/searchArticleMaterial”
data = {
‘item’: ‘{“type”:“lakh”,“period”:“1#%s”,“order”:“2”,“extra”:“全部”,“ranklist_id”:“”,“weixin_id”:“”,“start_time”:“2021-09-04”}’ % date,
‘nonce’: nonce,
‘xyz’: xyz
}
headers = {
‘user-agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36’,
‘referer’: ‘https://edit.newrank.cn/?module=article’,
}
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
技术提升。**
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
[外链图片转存中…(img-EF4yoGmx-1713592343620)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!