青龙面板挨个执行所有任务(有等待时间)

Authorization的值要自己通过浏览器 f12抓取青龙面部的认证头,暂时不知道如何自动获取,有知道的可以告知下,我对青龙一窍不通.
python的代码如下

import requests
import json
import time

url = "http://192.168.88.129:5700/api/crons?page=1&size=500&filters={}&t=1665038371774"

payload={}
headers = {
'Accept': '/',
'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6',
'Authorization': 'Bearer eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiSHROUGZjLW5MbUNMVlZTVFlVUW9ReW5CMnJEMHdxaEk2R3NSZzZrTTdoanlCWU9ROXhWWEpfIiwiaWF0IjoxNjY0MzY5Mjk4LCJleHAiOjE2NjYwOTcyOTh9.QO8PzXBtZvz89pQhNF0eMdjAqJOF45UACtMTDBjVYcMAFJBD0ouhXjksTC7RxNcD',
'Connection': 'keep-alive',
'Referer': 'http://192.168.88.129:5700/crontab',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.34'
}

response = requests.request("GET", url, headers=headers, data=payload)

text = json.loads(response.text)

print(text)

for cursor in text['data']['data']:
print( cursor['id'])
url = "http://192.168.88.129:5700/api/crons/run?t=1665026130128"

payload = "["+str(cursor['id'])+"]"

headers = {
'Accept': 'application/json',
'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6',
'Authorization': 'Bearer eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiSHROUGZjLW5MbUNMVlZTVFlVUW9ReW5CMnJEMHdxaEk2R3NSZzZrTTdoanlCWU9ROXhWWEpfIiwiaWF0IjoxNjY0MzY5Mjk4LCJleHAiOjE2NjYwOTcyOTh9.QO8PzXBtZvz89pQhNF0eMdjAqJOF45UACtMTDBjVYcMAFJBD0ouhXjksTC7RxNcD',
'Connection': 'keep-alive',
'Content-Type': 'application/json;charset=UTF-8',
'Origin': 'http://192.168.88.129:5700',
'Referer': 'http://192.168.88.129:5700/crontab',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.34'
}


response = requests.request("PUT", url, headers=headers, data=payload)

print(response.text)
time.sleep(15)

java代码如下

public static void  loop(){
    OkHttpClient client = new OkHttpClient().newBuilder()
            .build();
    Request request = new Request.Builder()
            .url("http://192.168.88.129:5700/api/crons?page=1&size=500&filters={}&t=1665038371774")
            .method("GET", null)
            .addHeader("Accept", "*/*")
            .addHeader("Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6")
            .addHeader("Authorization", "Bearer eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiSHROUGZjLW5MbUNMVlZTVFlVUW9ReW5CMnJEMHdxaEk2R3NSZzZrTTdoanlCWU9ROXhWWEpfIiwiaWF0IjoxNjY0MzY5Mjk4LCJleHAiOjE2NjYwOTcyOTh9.QO8PzXBtZvz89pQhNF0eMdjAqJOF45UACtMTDBjVYcMAFJBD0ouhXjksTC7RxNcD")
            .addHeader("Connection", "keep-alive")
            .addHeader("Referer", "http://192.168.88.129:5700/crontab")
            .addHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.34")
            .build();
    try {
        Response response = client.newCall(request).execute();
        String json = response.body().string();

        JSONObject jsonObject = JSON.parseObject(json);
        JSONArray jsonArray  = jsonObject.getJSONObject("data").getJSONArray("data");
        for(int i=0;i<jsonArray.size();i++){
            JSONObject item = jsonArray.getJSONObject(i);
            Integer id = item.getInteger("id");
            useCron(id);
            Thread.sleep(15000);
        }

    } catch (IOException | InterruptedException e) {
        e.printStackTrace();
    }
}
public static void useCron(int id){


    OkHttpClient client = new OkHttpClient().newBuilder()
            .build();
    MediaType mediaType = MediaType.parse("application/json;charset=UTF-8");
    RequestBody body = RequestBody.create(mediaType, "["+id+"]");
    Request request = new Request.Builder()
            .url("http://192.168.88.129:5700/api/crons/run?t=1665026130128")
            .method("PUT", body)
            .addHeader("Accept", "application/json")
            .addHeader("Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6")
            .addHeader("Authorization", "Bearer eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiSHROUGZjLW5MbUNMVlZTVFlVUW9ReW5CMnJEMHdxaEk2R3NSZzZrTTdoanlCWU9ROXhWWEpfIiwiaWF0IjoxNjY0MzY5Mjk4LCJleHAiOjE2NjYwOTcyOTh9.QO8PzXBtZvz89pQhNF0eMdjAqJOF45UACtMTDBjVYcMAFJBD0ouhXjksTC7RxNcD")
            .addHeader("Connection", "keep-alive")
            .addHeader("Content-Type", "application/json;charset=UTF-8")
            .addHeader("Origin", "http://192.168.88.129:5700")
            .addHeader("Referer", "http://192.168.88.129:5700/crontab")
            .addHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.34")
            .build();
    try {
        Response response = client.newCall(request).execute();
        System.out.println(response.body().string());
    } catch (IOException e) {
        e.printStackTrace();
    }
}

public static void main(String args[]){


    loop();

    //getLocation();
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • requests引子 概念:requests是一个很实用的Python HTTP客户端库,我们在写爬虫的时候经常会...
    裴general阅读 1,516评论 0 2
  • HTTP请求报文与响应报文格式请求报文包含四部分:a、请求行:包含请求方法、URI、HTTP版本信息 b、请求首部...
    小棋子js阅读 626评论 0 1
  • 不知道初入门python爬虫的朋友是否有过跟我一样的经历,书是早几年的,书上的示例代码可能已经不适用了,需要做一些...
    叶哈哈阅读 13,614评论 1 0
  • 一、HTTP协议的主要特点 简单快速:每个资源URI都是固定的 灵活:头部有数据类型,可以完成不同类型传输 无连接...
    番茄沙司a阅读 880评论 0 5