-
Автор темы
- #1
Что нужно для корректной работы.
Да бесполезная хрень прост скучно
- Перейдите на портал разработчиков Discord.
- Нажмите на "New Application" и введите имя вашего приложения.
- Перейдите на вкладку "Bot" и нажмите на кнопку "Add Bot".
- Скопируйте токен бота, который будет использован для его авторизации.
- Перейдите на вкладку "OAuth2" в вашем приложении.
- В разделе "Scopes" выберите bot.
- В разделе "Bot Permissions" выберите необходимые разрешения для вашего бота (например, Send Messages, Read Message History и т. д.).
- Сгенерируйте URL и откройте его в браузере, чтобы пригласить бота на ваш сервер.
main.py:
import discord
from discord.ext import commands
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager
import os
import time
TOKEN = "Ваш Токен"
CHANNEL_ID = 1096721496669442083
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
intents = discord.Intents.default()
intents.messages = True
intents.message_content = True
bot = commands.Bot(command_prefix='!', intents=intents)
@bot.event
async def on_ready():
print(f'Logged in as {bot.user}')
@bot.command()
async def screenshot(ctx):
print("Команда !screenshot вызвана")
url = "https://yougame.biz/forums/946/"
try:
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
driver.get(url)
print(f"Загружается страница: {url}")
time.sleep(3)
screenshot_path = "screenshot.png"
driver.save_screenshot(screenshot_path)
print(f"Скриншот сохранен: {screenshot_path}")
driver.quit()
with open(screenshot_path, 'rb') as f:
picture = discord.File(f)
await ctx.send("Скриншот страницы:", file=picture)
print("Скриншот отправлен в Discord")
os.remove(screenshot_path)
print("Файл скриншота удален")
except Exception as e:
print(f"Произошла ошибка: {e}")
bot.run(TOKEN)