上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

学习通查分 python

[复制链接]
  • TA的每日心情
    擦汗
    2022-8-1 10:48
  • 签到天数: 94 天

    [LV.6]常住居民II

    142

    主题

    521

    帖子

    842

    积分

    版主

    Rank: 8Rank: 8

    积分
    842

    猫咪币纪念章三好学生活跃会员热心会员突出贡献中秋纪念章国庆纪念章宣传达人推广达人

    发表于 2020-12-1 22:47:01 | 显示全部楼层 | 阅读模式
    记录一下,今天用python写了s网课,东西不难。重新写一遍 参数抓包找了挺久。
    基本功能已经实现但是还有很多需要完善的地方 过段时间整理一下分享⑧。

    突然想起来梦总的这个网站,就来看看。。

    抓包  基于cookie加密  





    抓包.png

    想扣js....想了想自己的水平  算了⑧   

    换个思路 基于cookies加密  如果将cookies  直接固定呢?  试了下  果然可行! 测试不存在cookies失效问题


    首先  第一个提交的数据“csrf”,源码 每次刷新得到一个新的csrf  ,这个csrf可以带着固定的cookies去进行获取  

    如图1  post中第二三个 参数  ,多抓几次包不难发现 两个的值是固定的  ,CTRL+F 搜索一下 , 在js文件中 都是基于cookies进行计算获得的,cookies固定这两个值直接固定就好  coures_url 和code  分别是 我们传入的url和验证码 。



    csrf.png 返回.png


    返回跳转的URL  拼接一下即可


    代码如下:
    import requests
    import re

    ck_headers={
    **************************
    }

    def Get_302url():
        #先获取源码中的csrf
        url = 'https://zyhzone.cn/xxt/score'
        res = requests.get(url=url,headers=ck_headers)
        print(res.text)
        #通过正则取csrf
        csrf = re.compile(r'csrf = "(.*?)"').findall(res.text)[0]
        #填写course_url
        course_url = input('请填写正确的URL:')
        #vcode读写验证码
        get_code()
        vcode = input('请填写验证码:')
        real_url = 'https://zyhzone.cn/xxt/getscore'
        data={
            'csrf': csrf,
            'n': '***',
            'se_key':'***',
            'course_url':course_url,
            'vcode':vcode
        }
        res_real = requests.post(url=real_url,headers=ck_headers)
        print(res_real.text)

    def get_code():
        url = 'https://zyhzone.cn/xxt/vcode?_=1606466986378'
        res = requests.get(url=url,headers=ck_headers)
        with open ('code.png','wb') as f:
            f.write(res.content)

    if __name__== "__main__":
        Get_302url()








    已有1人评分好评 贡献 理由
    李恒道 + 2 + 1

    查看全部评分 总评分:好评 +2  贡献 +1 

    bilibili:陈公子的话   公众号:陈公子的话

    该用户从未签到

    0

    主题

    1

    帖子

    15

    积分

    助理工程师

    Rank: 1

    积分
    15
    发表于 2020-12-2 18:07:38 | 显示全部楼层
    能说的再详细一些嘛 ?比如说ck_header要填入什么
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2022-8-1 10:48
  • 签到天数: 94 天

    [LV.6]常住居民II

    142

    主题

    521

    帖子

    842

    积分

    版主

    Rank: 8Rank: 8

    积分
    842

    猫咪币纪念章三好学生活跃会员热心会员突出贡献中秋纪念章国庆纪念章宣传达人推广达人

    发表于 2020-12-8 14:03:21 | 显示全部楼层
    神器的诺言 发表于 2020-12-2 18:07
    能说的再详细一些嘛 ?比如说ck_header要填入什么

    协议头....
    bilibili:陈公子的话   公众号:陈公子的话
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    3

    帖子

    46

    积分

    助理工程师

    Rank: 1

    积分
    46
    发表于 2020-12-13 18:56:30 | 显示全部楼层

    还是不知道是啥。。。。填了之后报错
    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表