Compare commits

...

4 commits

View file

@ -1,7 +1,7 @@
import discord
import subprocess
import asyncio
import os
from redbot.core import Config, checks, commands, bot, data_manager
from redbot.core import Config, checks, commands, data_manager
class ExportChannels(commands.Cog):
"""Custom cog to export channels to JSON and HTML formats using Discord Chat Exporter.
@ -21,6 +21,8 @@ class ExportChannels(commands.Cog):
self.bundled_data_path = data_manager.bundled_data_path(self)
out = f'{self.data_path}{os.sep}Exported Channels'
channel = channels[0]
file_location_html = f'{os.sep}{out}{os.sep}%g{os.sep}%c{os.sep}Export.html'
file_location_json = f'{os.sep}{out}{os.sep}%g{os.sep}%c{os.sep}DCE-f.json'
try:
os.mkdir(out)
except FileExistsError:
@ -30,28 +32,36 @@ class ExportChannels(commands.Cog):
'DiscordChatExporter.Cli.dll',
'export',
'--format', 'HtmlDark',
'--output', f'{os.sep}{out}{os.sep}%G (%g){os.sep}%C (%c){os.sep}Export.html',
'--token', f'{token}',
'--channel', {channel},
'--output', file_location_html,
'--token', token,
'--channel', channel,
'--media',
'--fuck_russia', 'true',
]
os.chdir(self.bundled_data_path)
subprocess.call(args)
process_1 = await asyncio.create_subprocess_exec(*args)
while True:
return_code_1 = process_1.poll()
if return_code_1 is not None:
break
args = [
'dotnet',
'DiscordChatExporter.Cli.dll',
'export',
'--format', 'Json',
'--output', f'{os.sep}{out}{os.sep}%G (%g){os.sep}%C (%c){os.sep}DCE-f.json',
'--token', f'{token}',
'--channel', {channels},
'--output', file_location_json,
'--token', token,
'--channel', channels,
'--reuse_media',
'--media',
'--fuck_russia', 'true',
]
os.chdir(self.bundled_data_path)
subprocess.call(args)
process_2 = await asyncio.create_subprocess_exec(*args)
while True:
return_code_2 = process_2.poll()
if return_code_2 is not None:
break
@commands.group()
@checks.is_owner()