Files
DomainMapper/utilities/win/convert.bat
2025-11-01 23:20:10 +11:00

114 lines
3.8 KiB
Batchfile
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@echo off
setlocal enabledelayedexpansion
chcp 65001 > NUL
REM Проверка Python 3
:CheckPython
python --version 2>NUL | findstr /I "Python 3" >NUL
if ERRORLEVEL 1 (
echo Python 3 не установлен.
choice /C YN /M "Установить?"
if ERRORLEVEL 2 (
echo Без Python 3 ничего не получится...
pause
exit /b 1
) else (
call :InstallPython
)
) else (
echo Python 3 установлен.
)
goto :CheckModules
REM Инсталляция Python 3
:InstallPython
echo Загрузка дистрибутива...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -OutFile 'python_installer.exe'} else {Start-BitsTransfer -Source 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -Destination 'python_installer.exe'}"
REM Проверяем успешность загрузки
if not exist "python_installer.exe" (
echo Ошибка загрузки установщика Python 3.
pause
exit /b 1
)
REM Установка Python 3
echo Установка...
echo PS - не забудьте ее разрешить в соседнем окне
python_installer.exe /quiet InstallAllUsers=1 PrependPath=1
del /q /f python_installer.exe
REM Оповещение о перезапуске
echo.
echo Установка завершена, но требуется обновить окружение.
echo - закройте это окно и запустите скрипт снова.
pause
exit /b 0
REM Проверка и установка необходимых модулей Python
:CheckModules
set "modules=requests dnspython ipaddress configparser httpx colorama"
echo.
echo Проверка необходимых библиотек...
for %%m in (%modules%) do (
pip show %%m >NUL 2>&1
if ERRORLEVEL 1 (
echo Установка библиотеки %%m...
pip install %%m
if ERRORLEVEL 1 (
echo Не удалось установить библиотеку %%m. Проверьте pip.
exit /b 1
)
)
)
goto :DownloadMain
REM Загрузка и запуск convert.py
:DownloadMain
echo Загрузка Domain Mapper Converter...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://github.com/Ground-Zerro/DomainMapper/raw/refs/heads/main/utilities/convert.py' -OutFile 'convert.py'} else {Start-BitsTransfer -Source 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/main/utilities/convert.py' -Destination 'convert.py'}"
if not exist "convert.py" (
echo Ошибка загрузки Domain Mapper Converter.
pause
exit /b 1
)
if not exist "ip.txt" (
echo.
echo Файл ip.txt не найден.
echo Создайте файл ip.txt в текущей директории и добавьте в него IP-адреса.
echo.
choice /C YN /M "Создать пустой файл ip.txt сейчас?"
if ERRORLEVEL 2 (
echo Завершение работы.
del /q /f convert.py
pause
exit /b 1
) else (
echo. > ip.txt
echo Файл ip.txt создан. Добавьте в него IP-адреса и запустите скрипт снова.
del /q /f convert.py
pause
exit /b 0
)
)
cls
echo Запускаем...
python convert.py
if ERRORLEVEL 1 (
echo Ошибка выполнения convert.py.
pause
del /q /f convert.py
exit /b 1
)
echo Программа завершена.
del /q /f convert.py
endlocal
pause
exit /b 0