原理:从你加入的channel里获取到历史消息随机选择一条发送至目标channel
需要先登录网页版获取authorization
# -*- coding: utf-8 -*-
"""
@Time : 2021/10/3 19:18
@Auth : d1rrick@scientistDAO
@File :autochat.py
@IDE :PyCharm"""
import requests
import json
import random
import time
import redef gen_context():context_list = ["hello bro","let's go !","to the moon!","nice","project","have a good day","good","luck","how's going","so do i","yeah","same to me","1","cool","so far so good","hi~","of course","really","cool~","ok","what?","why?","not bad","well done","great","perferct","thanks","ture","yes","no","here","interesting","it's funny","i am tired"]text = random.choice(context_list)return textdef get_context():chanel_list = []headr = {"Authorization": "","Content-Type": "application/json","User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36"}chanel_id = random.choice(chanel_list)url = "https://discord.com/api/v9/channels/{}/messages?limit=100".format(chanel_id)res = requests.get(url=url, headers=headr)result = json.loads(res.content)result_list = []for context in result:if ('<') not in context['content'] :if ('@') not in context['content'] :if ('http') not in context['content']:if ('?') not in context['content']:result_list.append(context['content'])return random.choice(result_list)def chat():chanel_list = ['']authorization_list = ['']for authorization in authorization_list:header = {"Authorization":authorization,"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36"}for chanel_id in chanel_list:msg = {"content": get_context(),"nonce": "82329451214{}33232234".format(random.randrange(0, 1000)),"tts": False}url = 'https://discord.com/api/v9/channels/{}/messages'.format(chanel_id)try:res = requests.post(url=url, headers=header, data=json.dumps(msg))print(res.content)except:passcontinuetime.sleep(random.randrange(30,50))if __name__ == '__main__':while True:try:chat()sleeptime = random.randrange(180, 240)time.sleep(sleeptime)except:passcontinue