• 大小: 31KB
    文件类型: .zip
    金币: 2
    下载: 2 次
    发布日期: 2021-05-13
  • 语言: 其他
  • 标签: python  

资源简介

易班自动答题软件脚本,用于易班青马易站答题板块的自动答题

资源截图

代码片段和文件信息

#!/usr/bin/env python3
# coding=utf-8
import os
import sys
import re
import json
import time
import getopt
import random
import requests
import traceback
import ybvote
import ybtopic
#import ybfeed
from yblogin import baseURL getUserToken getInfo

r = requests.Session()

‘‘‘
调用示例
获取 EPGA 数值信息
‘‘‘

def getEPGA(token):

    Get_EPGA = r.get(baseURL + ‘newgroup/indexPub/group_id/‘ +
                     group_id + ‘/puid/‘ + puid cookies=token timeout=10)
    EPGA = re.search(r‘EGPA:[0-9\.]*‘ Get_EPGA.text)
    return EPGA.group()


‘‘‘
获取一言字符 (Hitokoto API)
‘‘‘

def getHitokoto(CAT):

    Get_Hitokoto = r.get(‘https://sslapi.hitokoto.cn/‘
                         params={‘c‘: CAT ‘encode‘: ‘json‘} timeout=10)
    Hitokoto = Get_Hitokoto.json()[‘hitokoto‘]
    From = Get_Hitokoto.json()[‘from‘]
    return Hitokoto + ‘ --‘ + From

def wait():
    return time.sleep(random.uniform(1 3))


def fprint(I):
    return ‘ #‘ + str(I + 1)


‘‘‘
config.json 存储键值对
user 应为 ‘username‘: ‘password‘
‘‘‘

try:
    opts args = getopt.getopt(sys.argv[1:] “c:“ [“config“])
    global f
    for o a in opts:
        if o in (“-c“ “--config“):
            f = open(a ‘r‘)
    else:
        f = open(os.path.split(os.path.realpath(__file__))
                 [0] + ‘/config.json‘ ‘r‘)
except getopt.GetoptError as err:
    print(err)
    sys.exit(2)

config = json.loads(f.read())

user = config[‘user‘]
conf = config[‘configs‘]
cat = conf.get(‘cat‘ ‘b‘)

add_vote_count = conf.get(‘add_vote_count‘ 2)

vote_control_count = conf.get(‘vote_control_count‘ 5)
vote = conf.get(‘vote‘ True)
vote_up = conf.get(‘vote_up‘ True)
vote_reply_count = conf.get(‘vote_reply_count‘ 1)

add_topic_count = conf.get(‘add_topic_count‘ 2)

topic_control_count = conf.get(‘topic_control_count‘ 5)
topic_up = conf.get(‘topic_up‘ True)
topic_reply_count = conf.get(‘topic_reply_count‘ 1)

for username in user.keys():

    try:
        USERNAME = username
        PASSWD = user.get(username)
        yiban_user_token = getUserToken(USERNAME PASSWD)
        if yiban_user_token == “711“:
            print(USERNAME + ‘: 需要输入验证码。‘ traceback.format_exc())
            break
        token = dict(yiban_user_token=yiban_user_token)
        info = getInfo(token)

        group_id = conf.get(‘group_id‘ info[‘group_id‘])
        puid = conf.get(‘puid‘ info[‘puid‘])
        channel_id = conf.get(‘channel_id‘ info[‘channel_id‘])
        actor_id = conf.get(‘actor_id‘ info[‘actor_id‘])
        nick = info[‘nick‘]

        print(getEPGA(token))

        for i in range(0 add_vote_count):

            try:
                print(nick + ‘: 添加投票 ‘ + ybvote.vote(token puid group_id).add(getHitokoto(cat) getHitokoto(cat) getHitokoto(cat) getHitokoto(cat)) + fprint(i))
            except:
                print(nick + ‘: 添加投票时未获取到的错误‘ + fprint(i) traceback.format_exc())
            finally:
                wait()

        for i in range(0 add_topic_count):

            try:
                print(nic

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-09-25 10:06  yiban-api-master\
     文件          52  2018-09-25 10:06  yiban-api-master\.gitignore
     文件       35141  2018-09-25 10:06  yiban-api-master\LICENSE
     文件         407  2018-09-25 10:06  yiban-api-master\config.json.example
     文件          64  2018-09-25 10:06  yiban-api-master\make.bat
     文件          22  2018-09-25 10:06  yiban-api-master\requirements.txt
     目录           0  2018-09-25 10:06  yiban-api-master\ui\
     文件        1057  2018-09-25 10:06  yiban-api-master\ui\login.ui
     文件       17145  2018-09-25 10:06  yiban-api-master\ui\main.ui
     文件        6768  2018-09-25 10:06  yiban-api-master\yb.py
     文件        1660  2018-09-25 10:06  yiban-api-master\ybfeed.py
     文件        2453  2018-09-25 10:06  yiban-api-master\yblogin.py
     文件       20405  2018-09-25 10:06  yiban-api-master\ybqt.py
     文件        1325  2018-09-25 10:06  yiban-api-master\ybqtloginui.py
     文件       18328  2018-09-25 10:06  yiban-api-master\ybqtmainui.py
     文件        4408  2018-09-25 10:06  yiban-api-master\ybtopic.py
     文件        7144  2018-09-25 10:06  yiban-api-master\ybvote.py

评论

共有 条评论