Coder Social home page Coder Social logo

autoapip's Introduction

AutoApiP

AutoApi系列:AutoApi、AutoApiSecret、AutoApiSR、AutoApiS、AutoApiP

置顶

  • 不保证续期
  • 设置了周六日(UTC时间)不启动自动调用,修改看教程

跳转

步骤

  • 准备工具:
    • E5开发者账号(非个人/私人账号)
    • rclone软件,下载地址 rclone.org ,(windows 64)
    • 教程图片看不到请科学上网

微软方面的准备工作

  • 第一步,注册应用,获取应用id、secret

    • 1)点击打开仪表板,左边点击所有服务,找到应用注册,点击+新注册

    image

    image

    • 3)复制应用程序(客户端)ID到记事本备用(获得了应用程序ID!),点击左边管理的证书和密码,点击+新客户端密码,点击添加,复制新客户端密码的保存(获得了应用程序密码!)

    image

    image

    • 4)点击左边管理的API权限,点击+添加权限,点击常用Microsoft API里的Microsoft Graph(就是那个蓝色水晶), 点击委托的权限,然后在下面的条例选中下列需要的权限,最后点击底部添加权限

    赋予api权限的时候,选择以下几个

              Calendars.ReadWrite、Contacts.ReadWrite、Directory.ReadWrite.All、
              
              Files.ReadWrite.All、MailboxSettings.ReadWrite、Mail.ReadWrite、
              
              Notes.ReadWrite.All、People.Read.All、Sites.ReadWrite.All、
              
              Tasks.ReadWrite、User.ReadWrite.All
    

    image

    image

    image

    • 5)添加完自动跳回到权限首页,点击代表授予管理员同意

    image

  • 第二步,获取refresh_token(微软密钥)

    • 1)rclone.exe所在文件夹,shift+右键,在此处打开powershell,输入下面修改后的内容,回车后跳出浏览器,登入e5账号,点击接受,回到powershell窗口,看到一串东西。

            ./rclone authorize "onedrive" "应用程序(客户端)ID" "应用程序密码"
      
    • 2)在那一串东西里找到 "refresh_token":" ,从双引号开始选中到 ","expiry":2021 为止(就是refresh_token后面双引号里那一串,不要双引号),如下图,右键复制保存(获得了微软密钥

    image


GITHUB方面的准备工作

  • 第一步,fork本项目

    登陆/新建github账号,回到本项目页面,点击右上角fork本项目的代码到你自己的账号,然后你账号下会出现一个一模一样的项目,接下来的操作均在你的这个项目下进行。

    image

  • 第二步,新建github密钥

    • 1)进入你的个人设置页面 (右上角头像 Settings,不是仓库里的 Settings),选择 Developer settings -> Personal access tokens -> Generate new token

    image

    image

    • 2)设置名字为 GH_TOKEN , 然后勾选repo,点击 Generate token ,最后复制保存生成的github密钥(获得了github密钥,一旦离开页面下次就看不到了!)

    image

  • 第三步,新建secret

    • 1)依次点击页面上栏右边的 Setting -> 左栏 Secrets -> 右上 New repository secret,新建4个secret: GH_TOKEN、MS_TOKEN、CLIENT_ID、CLIENT_SECRET

    image

    image

    (以下填入内容注意前后不要有空格空行)

    GH_TOKEN

    github密钥 (第三步获得),例如获得的密钥是abc...xyz,则在secret页面直接粘贴进去,不用做任何修改,只需保证前后没有空格空行

    MS_TOKEN

    微软密钥(第二步获得的refresh_token)

    CLIENT_ID

    应用程序ID (第一步获得)

    CLIENT_SECRET

    应用程序密码 (第一步获得)

调用

  • 1)点击两次右上角的星星(star)启动action,,再点击上面的Action,选择Auto Api Pro 就能看到每次的运行日志,看看运行状况

(必需点进去Test Api看下,api有没有调用到位,有没有出错。外面的Auto Api打勾只能说明运行是正常的,我们还需要确认api调用成功了,就像图里的一样)

![image](https://github.com/wangziyingwen/ImageHosting/blob/master/AutoApi/日志.png)
  • 2)再点两次星星,如果还能成功运行就ok了(这一步是为了保证重新上传到secret的token是正确的)

教程完


额外设置 (看不懂请忽略)##

  • 定时启动修改

  • 多账号/应用支持

  • 超级参数设置

定时启动修改

我设定的每6小时自动运行一次(周六日不启动),每次调用3轮(点击右上角星星/star也可以立马调用一次),你们自行斟酌修改(我也不知道保持活跃要调用多少次、多久):

  • 定时自动启动修改地方:在.github/workflow/autoapi.yml(只修改这一个)文件里,自行百度cron定时任务格式,最短每5分钟一次

    image

多账号/应用支持

如果想输入第二账号或者应用,请按上述获取第二个应用的id、密码、微软密钥:

再按以下步骤:

1)增加secret

依次点击页面上栏右边的 Setting -> 左栏 Secrets -> 右上 New repository secret,新增加secret:APP_NUM、MS_TOKEN_2、CLIENT_ID_2、CLIENT_SECRET_2

APP_NUM

账号/应用数量(现在例如是2,3个就是3,日后如果要增加请删掉新建APP_NUM)

MS_TOKEN_2

第二个账号的微软密钥(第二步refresh_token),(第三个就是MS_TOKEN_3,如此类推)

CLIENT_ID_2

第二个账号的应用程序ID(第一步)

CLIENT_SECRET_2

第二个账号的应用程序密码(第一步)

2)修改.github/workflows/里的两个yml文件(超过5个账号需要更改,5个及以下暂时不用修改文件,忽略这一步

yml文件我已经注明了,看着改就行,我已经写入5个账号了,跟着复制粘贴很简单的(没有找到比较好的自动方案)

超级参数设置

runapi.py 文件第11行有个config_list,里面是以下参数配置

· 轮数:

         就是一次运行要跑多少轮api,也就是启动一次会重复跑几圈

· 是否启动随机时间(默认关闭):

        这个是每一轮结束,要不要等一个随机时间再开始调用下一轮。后面两个参数就是生成随机时间的,例如设置600,1200,就会延时600-1200s之间。

· 是否开启随机api顺序(默认开启):

        不开启就是初版10个api,固定顺序。开启就是28个api抽12个随机排序。

· 是否开启各api延时(默认关闭):

        这个是每个api之间要不要开启延时。后面两参数参考“随机时间”

· 是否开启各账号延时(默认关闭):

        这个是每个账号/应用之间要不要开启延时。后面两参数参考“随机时间”

(延时的设置是会延长运行时间的,全关闭大概每次运行1min,开启就会适当延长)

—————————————完—————————————

                         wangziyingwen

—————————————完—————————————

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.