超星学习通自动签到使用教程

我也不知道写这个干嘛。。。 :huaji21:
https://github.com/yuban10703/chaoxingsign
这里就讲云函数使用吧,脚本能自动判断云函数与本地运行(感谢gzzchh) :huaji14:
到控制台按照图中顺序新建一个云函数(目前测试广州好像不能用.其他地区可以)

然后进入新建函数界面,名字随便填,运行环境选择python3.6,模板的话随便就行,反正都要删掉的....

然后把云函数代码根目录下的代码全部从右边拷贝到左边(点一下GitHub右上角的小铅笔,CTRL-A,CTRL-C,CTRL-A,CTRL-V)

然后把config.json的文件也拷贝过去

单用户的话像下面一样设置就好了(name默认就是默认状态,除非你想搞事情,SCKEY不用的话也保持默认就行) :huaji11:

多用户的话就是往后面追加,

如果只填一个参数的话所有的用户都会用那一个参数,比如下图中的SCKEY(应该会吧....我自己都不知道我写了啥)
如果一些用户不需要一些特定参数就给留一个空的值,比如图中的picname(picname就是同目录下的图片名字)
对了,上传图片的话先把代码包下载下来(编辑框右上角,下载-下载代码包),然后在代码包里把图片塞进去,然后在左上角的提交方法里上传本地zip包再传回去.....
接下来点击下面的保存并测试

测试成功的话就没什么问题,失败的话可能是课太多,超时时间设置的太短了,把超时时间调大点(应该可以吧,,,,也有可能有bug.emmm)

然后到触发方式里,添加触发方式,自定义触发方式,或者直接选择5分钟一次......

0 */5 8-19 * * MON-FRI *

上面这个表示周一到周五每天的8-19点内每5分钟触发一次

可以在运行日志看见运行情况..

点赞
  1. 111说道:
    Google Chrome Windows 10
    大哥 这个可以多个课程一起检测吗,一个一个的太慢了
    1. tianle tianle说道:
      Google Chrome Windows 10
      不会,,,刚刚开始学python没几天...
      1. 陪你度过漫长岁月说道:
        Google Chrome Windows 10
        刚学几天就做出来了啊,牛啊
        1. tianle tianle说道:
          Google Chrome Windows 10
          原作者现成函数....
  2. muran说道:
    Google Chrome Windows 10
    Traceback (most recent call last): File "C:\Users\18044\Desktop\chaoxingsign-master\chaoxingsign-master\chaoxingsign.py", line 79, in pushdata['imageurl']=item['content']['course']['data'][0]['imageurl'] KeyError: 'imageurl'
    1. tianle tianle说道:
      Google Chrome Windows 10
      emmm,我也不知道啥出问题了 :lei:
      1. muran说道:
        Google Chrome Windows 10
        我知道怎么解决了,把带有imageurl的这一行代码注释掉即可 :kaixin:
        1. tianle tianle说道:
          Google Chrome Windows 10
          :tushe: 那就好 :caihong:
      2. Zxilly说道:
        Google Chrome Windows 10
        imageurl并不是一个必定存在的参数。。。 拿个try包起来,except KeyError就好
        1. tianle tianle说道:
          Google Chrome Windows 10
          emmm,直接去掉了,貌似用不到这个 :huaji12:
  3. whooc说道:
    大佬全是这样的 13.课程名称:军事理论(2019秋) ('2020-03-25 16:36:46', '[\xe7\x9b\x91\xe6\x8e\xa7\xe8\xbf\x90\xe8\xa1\x8c\xe4\xb8\xad]\xe8\xaf\xbe\xe7\xa8\x8b:', u'\u5f62\u52bf\u4e0e\u653f\u7b56\uff082020\u6625\uff09', '\xe6\x9c\xaa\xe6\x9f\xa5\xe8\xaf\xa2\xe5\x88\xb0\xe7\xad\xbe\xe5\x88\xb0\xe6\xb4\xbb\xe5\x8a\xa8') ('2020-03-25 16:36:57', '[\xe7\xad\xbe\xe5\x88\xb0]', u'\u7ba1\u7406\u5b66\u539f\u7406', u'\u67e5\u8be2\u5230\u5f85\u7b7e\u5230\u6d3b\u52a8 \u6d3b\u52a8\u540d\u79f0:\u7b7e\u5230 \u6d3b\u52a8\u72b6\u6001: \u6d3b\u52a8\u65f6\u95f4: aid:161958757') (u'\u60a8\u5df2\u7b7e\u5230\u8fc7\u4e86', '\xe7\xad\xbe\xe5\x88\xb0\xe5\xa4\xb1\xe8\xb4\xa5') ('2020-03-25 16:37:07', '[\xe7\x9b\x91\xe6\x8e\xa7\xe8\xbf\x90\xe8\xa1\x8c\xe4\xb8\xad]\xe8\xaf\xbe\xe7\xa8\x8b:', u'\u5927\u5b66\u751f\u5fc3\u7406\u5065\u5eb7\u6559\u80b2', '\xe6\x9c\xaa\xe6\x9f\xa5\xe8\xaf\xa2\xe5\x88\xb0\xe7\xad\xbe\xe5\x88\xb0\xe6\xb4\xbb\xe5\x8a\xa8') ('2020-03-25 16:37:18', '[\xe7\x9b\x91\xe6\x8e\xa7\xe8\xbf\x90\xe8\xa1\x8c\xe4\xb8\xad]\xe8\xaf\xbe\xe7\xa8\x8b:', u'\u4e2d\u7ea7\u8d22\u52a1\u4f1a\u8ba11', '\xe6\x9c\xaa\xe6\x9f\xa5\xe8\xaf\xa2\xe5\x88\xb0\xe7\xad\xbe\xe5\x88\xb0\xe6\xb4\xbb\xe5\x8a\xa8') ('2020-03-25 16:37:28', '[\xe7\x9b\x91\xe6\x8e\xa7\xe8\xbf\x90\xe8\xa1\x8c\xe4\xb8\xad]\xe8\xaf\xbe\xe7\xa8\x8b:', u'\u4e2d\u56fd\u8fd1\u73b0\u4ee3\u53f2\u7eb2\u8981', '\xe6\x9c\xaa\xe6\x9f\xa5\xe8\xaf\xa2\xe5\x88\xb0\xe7\xad\xbe\xe5\x88\xb0\xe6\xb4\xbb\xe5\x8a\xa8') ('2020-03-25 16:37:38', '[\xe7\x9b\x91\xe6\x8e\xa7\xe8\xbf\x90\xe8\xa1\x8c\xe4\xb8\xad]\xe8\xaf\xbe\xe7\xa8\x8b:', u'\u5927\u5b66\u4f53\u80b2', '\xe6\x9c\xaa\xe6\x9f\xa5\xe8\xaf\xa2\xe5\x88\xb0\xe7\xad\xbe\xe5\x88\xb0\xe6\xb4\xbb\xe5\x8a\xa8') ('2020-03-25 16:37:48', '[\xe7\x9b\x91\xe6\x8e\xa7\xe8\xbf\x90\xe8\xa1\x8c\xe4\xb8\xad]\xe8\xaf\xbe\xe7\xa8\x8b:', u'\u9ad8\u7b49\u6570\u5b66A2', '\xe6\x9c\xaa\xe6\x9f\xa5\xe8\xaf\xa2\xe5\x88\xb0\xe7\xad\xbe\xe5\x88\xb0\xe6\xb4\xbb\xe5\x8a\xa8') Traceback (most recent call last): File "/home/whooc/Desktop/chaoxingsign-master/chaoxingsign.py", line 140, in time.sleep(speed)#休眠 KeyboardInterrupt
    1. tianle tianle说道:
      Google Chrome Windows 10
      啊??
    2. tianle tianle说道:
      Google Chrome Windows 10
      这是字体有问题???........
      1. whooc说道:
        我不是很懂,我是在linux上面弄的 |这是截图 https://linux.whooc.com/download/%E6%B7%B1%E5%BA%A6%E6%88%AA%E5%9B%BE_20200325165337.png
        1. tianle tianle说道:
          Google Chrome Windows 10
          你去shell里执行下试试?我这测试没问题呀,,,,,
          1. whooc说道:
            这里面也不行 看来得到win10上面弄了 https://linux.whooc.com/download/%E6%B7%B1%E5%BA%A6%E6%88%AA%E5%9B%BE_20200325170233.png :han:
          2. tianle tianle说道:
            Google Chrome Windows 10
            试试这个.... python3 chaoxingsign.py
          3. whooc说道:
            哇,成功,谢谢大佬
    3. tianle tianle说道:
      Google Chrome Windows 10
      你用的python版本是什么?,我这里3.7.5和3.8.2都没问题呀...... :huaji9:
      1. whooc说道:
        2.7 3.5都有
  4. whooc说道:
    大佬,这个能放在服务器上面一直监控吗,一直监控会不会违规
    1. tianle tianle说道:
      Google Chrome Windows 10
      不会吧,我挂了好几天了 :huaji9:
  5. clvax说道:
    Google Chrome Windows 10
    大佬怎么样做到只执行一次查询签到,不让py脚本一直监控运行(这样高频率的访问服务器负载,超星也可能把IP拉黑),我crontab设置了定时任务,周一至周五朝七晚六每五分钟执行一次脚本,但我查询进程发现一天下来有几百个py进程后台运行 嘤嘤嘤
    1. tianle tianle说道:
      Google Chrome Windows 10
      你把查询间隔调大点,用screen挂住就好了...
  6. admer说道:
    Google Chrome Windows 10
    有一门课 显示 error 502 怎么回事,只是一门课 其他都正常
    1. tianle tianle说道:
      Google Chrome Windows 10
      这门课是不是从来没有发过签到之类的消息?
  7. konsn说道:
    Google Chrome Mac OS X 10.15.4
    {"errorCode":1,"errorMessage":"user code exception caught","stackTrace":"Traceback (most recent call last):\n File \"/var/user/index.py\", line 247, in main_handler\n CxSign.subject(m)\n File \"/var/user/index.py\", line 75, in subject\n cdata = json.loads(res.text)\n File \"/var/lang/python3/lib/python3.6/json/__init__.py\", line 354, in loads\n return _default_decoder.decode(s)\n File \"/var/lang/python3/lib/python3.6/json/decoder.py\", line 339, in decode\n obj, end = self.raw_decode(s, idx=_w(s, 0).end())\n File \"/var/lang/python3/lib/python3.6/json/decoder.py\", line 357, in raw_decode\n raise JSONDecodeError(\"Expecting value\", s, err.value) from None\njson.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)"}
    1. tianle tianle说道:
      Google Chrome Windows 10
      什么环境?... 看看配置文件....
      1. Konsn说道:
        Safari iPhone iOS 13.3
        就按教程里走的呀 云函数选的python3.6啊 这个.py代码不知道哪儿有问题 头大死了
        1. tianle tianle说道:
          Google Chrome Windows 10
          你用的是根目录下的的那个PY吧... 看一下配置文件,,, :huaji9:
  8. konsn说道:
    Google Chrome Mac OS X 10.15.4
    去哪看配置文件啊?你直接加个我微信吧
    1. tianle tianle说道:
      Google Chrome Windows 10
      就是那个conf.json啊...
      1. konsn说道:
        Google Chrome Mac OS X 10.15.4
        { "username": [""], "passwd": [""], "SCKEY": [""], "name": [""], "address": [""], "latitude": ["32.2829260000"], "longitude": ["43.9237990000"], "picname": [""] }
        1. tianle tianle说道:
          Google Chrome Windows 10
          用户名和密码你当时填了么?....
          1. Konsn说道:
            Safari iPhone iOS 13.3
            填了 一直找不到什么原因
          2. tianle tianle说道:
            Google Chrome Windows 10
            你云函数地区不会是广州吧....
  9. konsn说道:
    Google Chrome Mac OS X 10.15.4
    { "username": [""], "passwd": [""], "SCKEY": [""], "name": [""], "address": [""], "latitude": ["32.2829260000"], "longitude": ["43.9237990000"], "picname": [""] }
  10. 小兰说道:
    Google Chrome Windows 10
    测试失败 返回结果 [Errno 2] No such file or directory: 'conf.json' 这个怎么回事吖 萌新跟着教程走的
  11. 小兰说道:
    Google Chrome Windows 10
    我配置了那个json 还是不得行
    1. tianle tianle说道:
      Google Chrome Windows 10
      json是什么样子的....?
      1. 小兰说道:
        Google Chrome Windows 10
        { "username": [""], "passwd": [""], "SCKEY": [""], "name": [""], "address": [""], "latitude": ["32.2829260000"], "longitude": ["43.9237990000"], "picname": [""] } 就是这个啊 是不是没配置好啊
        1. tianle tianle说道:
          Google Chrome Windows 10
          用户名和密码填了么??
          1. 小兰说道:
            Google Chrome Windows 10
            只填了这两项
          2. tianle tianle说道:
            Google Chrome Windows 10
            是手机号和密码么?
          3. 小兰说道:
            Google Chrome Windows 10
            是的 就是超星的账号密码
          4. tianle tianle说道:
            Google Chrome Windows 10
            账号确定是手机号? 报错信息呢?.....
          5. 小兰说道:
            Google Chrome Windows 10
            [Errno 2] No such file or directory: 'conf.json' 报错信息是这个
          6. tianle tianle说道:
            Google Chrome Windows 10
            好像是我的问题 你把config.json改成conf.json....
          7. 小兰说道:
            Google Chrome Windows 10
            改了之后 也报错 Traceback (most recent call last): File "/var/user/index.py", line 224, in main_handler CxSign.subject(m) File "/var/user/index.py", line 71, in subject cdata = json.loads(res.text) File "/var/lang/python3/lib/python3.6/json/__init__.py", line 354, in loads return _default_decoder.decode(s) File "/var/lang/python3/lib/python3.6/json/decoder.py", line 339, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/var/lang/python3/lib/python3.6/json/decoder.py", line 357, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
          8. tianle tianle说道:
            Google Chrome Windows 10
            方便的话加我下QQ,把账号密码发我试试....... QQ:2846021566
          9. 小兰说道:
            Google Chrome Windows 10
            ?
  12. sfkajgifja说道:
    Google Chrome Windows 10
    START RequestId: a913ee70-1218-4e10-97e8-4692343dd1fe Event RequestId: a913ee70-1218-4e10-97e8-4692343dd1fe 获取配置成功 运行于云函数模式 Starting new HTTPS connection (1): passport2-api.chaoxing.com:443 https://passport2-api.chaoxing.com:443 "POST /v11/loginregister HTTP/1.1" 200 108 用户: 0 获取cookie成功 Starting new HTTP connection (1): mooc1-api.chaoxing.com:80 http://mooc1-api.chaoxing.com:80 "GET /mycourse/backclazzdata HTTP/1.1" 200 None 2020-05-07 10:08:55 用户: 0 正在查询课程: usjsjsj Starting new HTTPS connection (1): mobilelearn.chaoxing.com:443 https://mobilelearn.chaoxing.com:443 "GET /ppt/activeAPI/taskactivelist?courseId=212401221&classId=27037669&uid=109014855 HTTP/1.1" 200 None 2020-05-07 10:08:55 [签到] usjsjsj 查询到待签到活动 活动名称:手势签到 活动状态: 活动时间: aid:232837440 END RequestId: a913ee70-1218-4e10-97e8-4692343dd1fe Report RequestId: a913ee70-1218-4e10-97e8-4692343dd1fe Duration:3000ms Memory:128MB MemUsage:20.3828MB 这是什么错误啊,大佬
    1. tianle tianle说道:
      Google Chrome Windows 10
      去提issue,blog太难用了,,,,
      1. sfkajgifja说道:
        Google Chrome Windows 10
        e
      2. sfkajgifja说道:
        Google Chrome Windows 10
        我知道了,我的时间没改
  13. Moichi说道:
    返回结果 Traceback (most recent call last): File "/var/user/index.py", line 247, in main_handler CxSign.subject(m) File "/var/user/index.py", line 75, in subject cdata = json.loads(res.text) File "/var/lang/python3/lib/python3.6/json/__init__.py", line 354, in loads return _default_decoder.decode(s) File "/var/lang/python3/lib/python3.6/json/decoder.py", line 339, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/var/lang/python3/lib/python3.6/json/decoder.py", line 357, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
    1. tianle tianle说道:
      WebView Android 10
      云函数地区是啥?
      1. Moichi说道:
        广州,腾讯云的
        1. tianle tianle说道:
          WebView Android 10
          看文章开头
          1. Moichi说道:
            哎呀,难怪了,谢谢,我这就去搞
  14. Suyize说道:
    Google Chrome Windows 10
    Process exited before completing request 测试失败显示这个
    1. tianle tianle说道:
      Google Chrome Windows 10
      时间设置的太短了?
      1. Suyize说道:
        Google Chrome Windows 10
        没,设置的是十分钟的0 */10 8-22 * * * *,是不是我源码放错了,我放的是GitHub根目录下面的两个
        1. tianle tianle说道:
          Google Chrome Windows 10
          函数运行时间呢?....
          1. Suyize说道:
            Google Chrome Windows 10
            这个不知道好像是源码里面默认的,不知道在哪看...
          2. tianle tianle说道:
            Google Chrome Windows 10
            把文章看完......
          3. Suyize说道:
            Google Chrome Windows 10
            修改完了又变了,,,{"errorCode":-1,"errorMessage":"User process exit when running"}
          4. tianle tianle说道:
            Google Chrome Windows 10
            截图看看
  15. Suyize说道:
    Google Chrome Windows 10
    返回结果 {"errorCode":-1,"errorMessage":"User process exit when running"} 执行摘要 请求ID f09f802d-036d-4ada-80b2-e2466e045e12 运行时间 699ms 计费时间 699ms 运行内存 30.82421875MB 执行日志 START RequestId: f09f802d-036d-4ada-80b2-e2466e045e12 Event RequestId: f09f802d-036d-4ada-80b2-e2466e045e12 未找到配置文件 软件退出 ERROR RequestId:f09f802d-036d-4ada-80b2-e2466e045e12 Result:{"errorCode":-1,"errorMessage":"User process exit when running"} END RequestId: f09f802d-036d-4ada-80b2-e2466e045e12 Report RequestId: f09f802d-036d-4ada-80b2-e2466e045e12 Duration:699ms Memory:128MB MemUsage:30.824219MB
    1. tianle tianle说道:
      Google Chrome Windows 10
      未找到配置文件????
      1. Suyize说道:
        Microsoft Edge Windows 10
        我都按照步骤来了,都不差东西...我不知道这是为啥的
        1. tianle tianle说道:
          Google Chrome Windows 10
          按照步骤怎么可能会有问题?...截图
          1. Suyize说道:
            Google Chrome Windows 10
            https://bj.bcebos.com/im-cs/014b039b19737fa50b186cbe86eebea2.jpg https://bj.bcebos.com/im-cs/d6659afd9155bc7c52b8e71a922baf7c.jpg 这是两个截图,评论不好发送图片
          2. tianle tianle说道:
            Google Chrome Windows 10
            用根目录下的
          3. Suyize说道:
            Google Chrome Windows 10
            https://bj.bcebos.com/im-cs/92317a84e32b75217bdc793eb84bed29.jpg 用的是就是这个
          4. tianle tianle说道:
            Google Chrome Windows 10
          5. Suyize说道:
            Google Chrome Windows 10
            十分感谢,刚刚又出现个问题,把json的内容换了一下就可以用了
          6. tianle tianle说道:
            Google Chrome Windows 10
            那就好...
          7. Suyize说道:
            Google Chrome Windows 10
            想说个建议就是,可以在Server提示里面添加一个签到的类型显示,个人觉得这样比较好一点 :kuanghan:
          8. tianle tianle说道:
            Google Chrome Windows 10
            这个判断签到类型有点难...而且我开学了不用这个东西了.....
          9. Suyize说道:
            Google Chrome Windows 10
            好嘞,我直接看到一个的云函数,几句话,好像调用api接口的,就有这些东西
          10. tianle tianle说道:
            Google Chrome Windows 10
            emmm,有空抄一下
  16. 晓轩说道:
    Google Chrome Windows 10
    list indices must be integers or slices, not str 这是咋回事呀 :lei:
    1. tianle tianle说道:
      Google Chrome Mac OS X 10.15.2
      你的配置给我kk。。。
      1. 晓轩说道:
        Google Chrome Windows 10
        Traceback (most recent call last): File "/var/user/index.py", line 247, in main_handler CxSign.subject(m) File "/var/user/index.py", line 75, in subject cdata = json.loads(res.text) File "/var/lang/python3/lib/python3.6/json/__init__.py", line 354, in loads return _default_decoder.decode(s) File "/var/lang/python3/lib/python3.6/json/decoder.py", line 339, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/var/lang/python3/lib/python3.6/json/decoder.py", line 357, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 变成这个啦 :lei:
        1. tianle tianle说道:
          Google Chrome Mac OS X 10.15.2
          函数地区是?
          1. 晓轩说道:
            Google Chrome Windows 10
            上海
          2. tianle tianle说道:
            Google Chrome Mac OS X 10.15.2
            换香港试试
          3. 晓轩说道:
            Google Chrome Windows 10
            试过了,北京,成都都不行
          4. tianle tianle说道:
            Google Chrome Mac OS X 10.15.2
            配置文件kk
          5. 晓轩说道:
            Google Chrome Windows 10
            { "username": ["11111111111"], "passwd": ["123456"], "SCKEY": [""], "name": [""], "address": [""], "latitude": ["32.2829260000"], "longitude": ["43.9237990000"], "picname": [""] } 这个?
          6. tianle tianle说道:
            Google Chrome Mac OS X 10.15.2
          7. 晓轩说道:
            Google Chrome Windows 10
            然后呢,咋办?
          8. tianle tianle说道:
            Google Chrome Mac OS X 10.15.2
            腾讯云函数界面,报错的整个截图
          9. 晓轩说道:
            Google Chrome Windows 10
            加你QQ了,QQ聊吧
        2. 晓轩说道:
          Google Chrome Windows 10
          然后呢咋办?

发表评论

电子邮件地址不会被公开。必填项已用 * 标注