Исходник Скриншот темы << YouGame >> Discord Bot

Начинающий
Статус
Оффлайн
Регистрация
25 Сен 2024
Сообщения
38
Реакции[?]
6
Поинты[?]
8K
Что нужно для корректной работы.

  • Перейдите на портал разработчиков Discord.
  • Нажмите на "New Application" и введите имя вашего приложения.
  • Перейдите на вкладку "Bot" и нажмите на кнопку "Add Bot".
  • Скопируйте токен бота, который будет использован для его авторизации.
  • Перейдите на вкладку "OAuth2" в вашем приложении.
  • В разделе "Scopes" выберите bot.
  • В разделе "Bot Permissions" выберите необходимые разрешения для вашего бота (например, Send Messages, Read Message History и т. д.).
  • Сгенерируйте URL и откройте его в браузере, чтобы пригласить бота на ваш сервер.
И напишите в лс боту -> !screenshot

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)
Да бесполезная хрень прост скучно
 
Участник
Статус
Онлайн
Регистрация
4 Мар 2021
Сообщения
898
Реакции[?]
179
Поинты[?]
93K
zalupa.py:
import disnake, io; from disnake.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

chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
chrome_options.add_argument("--hide-scrollbars")
chrome_options.add_argument("--window-size=1920,1080")

intents = disnake.Intents.all()
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, url: str = "https://yougame.biz/forums/946/"):
    print("Команда !screenshot вызвана")
    
    try:
        driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
        driver.get(url)
        print(f"Загружается страница: {url}")
        screen = io.BytesIO(driver.get_screenshot_as_png())
        print(f"Скриншот залупа.ком получен")
        driver.quit()


        picture = disnake.File(fp=screen, filename=f'{screen}.png')
        await ctx.send("Скриншот страницы:", file=picture)
        print("Скриншот отправлен в Discord")
    except Exception as e:
        print(f"Произошла ошибка: {e}")

bot.run(TOKEN)
ебать усложнил конечно, ещё и дискорд.пай который перестали поддерживать
SS:
1729824236923.png
P.S: создание файла без абсолютной папки это хуево, да и тут вообще файл не нужен. Надеюсь это реально только от нехуй делать сделано.
 
Сверху Снизу