美文网首页
爬虫:爱奇艺Login&查看观看记录

爬虫:爱奇艺Login&查看观看记录

作者: 真夜猫 | 来源:发表于2020-11-17 11:40 被阅读0次
    目标网址:https://www.iqiyi.com/
    我们来抓登录包,我们发现passwd这个参数被网站进行了加密,在上一次的文章中,我们已经对它进行过处理,成功的破解的他的js加密代码,我们直接拿过来使用就行。

    代码部分:

    需要导入的库:

    import requests
    import execjs
    from requests import sessions
    import re
    

    Js读取:读取上篇文章抠出来的js加密代码

    def get_js():#js读取
        f = open("爱奇艺.js", 'r', encoding='utf-8') # 打开JS文件,,这个文件是我上篇文章中抠出来的js破解代码
        line = f.readline()
        htmlstr = ''
        while line:
            htmlstr = htmlstr+line
            line = f.readline()
        return htmlstr
    

    js运行

    def get_js_data(data):#js运行
        jsstr = get_js()
        ctx = execjs.compile(jsstr) #加载JS文件
        return (ctx.call('rsaFun',data))#调用js方法  第一个参数是JS的方法名,后面的data和key是js方法的参数
    

    登录并查看观看记录函数

    def login():
        Session=sessions.session()
        url="https://passport.iqiyi.com/apis/reglogin/login.action"
    
        headers={
    
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36",
        }
    
        data={
            "email":"爱奇艺账号",
            "fromSDK":1,
            "passwd":get_js_data("爱奇艺登录密码"),
            "agenttype":1,
            "__NEW":1,
            "checkExist":1,
            "lang":"",
            "ptid":"01010021010000000000",
            "nr":"2",
            "verifyPhone":"1",
            "area_code":"86",
            "dfp": "a04a644c84f3d343cfb521a46a898c328e133b337d8f0502e5ba411d3ede8688df"
    
    
    
        }
        print(data)
        resp=Session.post(url=url,headers=headers,data=data)
        # print(resp.text)
    
        resp=Session.get("https://l-rcd.iqiyi.com/apis/qiyirc/getallrc?ckuid=e4d0a4f91a85ea0f76607effb48cb0c8&only_long=1&vp=0&pageNum=1&pageSize=20")
        # print(resp.text)
        videoNames=re.findall('videoName\"\:'+"(.*?)"+'\,',resp.text)
        print("你看过:")
        for videoName in videoNames:
            print(videoName)
    
    我们直接调用login()函数,可以看到运行结果:

    完成了,点个赞吧!!!

    相关文章

      网友评论

          本文标题:爬虫:爱奇艺Login&查看观看记录

          本文链接:https://www.haomeiwen.com/subject/qngnvktx.html