Skip to content

kktae/auto-mzstudy

Repository files navigation

Auto MZStudy

Automated course completion tool for MZStudy (메가존아이티평생교육원) online learning platform with parallel processing for accelerated completion.

Installation

Step 1: Download Binary

Go to the GitHub Releases page and download the appropriate binary for your operating system.

Note: Use /latest/download/ for the most recent release, or replace with specific version like /download/v1.0.1/ if latest links don't work.

Linux (x86_64)

# Using latest release
wget https://github.com/kktae/auto-mzstudy/releases/latest/download/auto-mzstudy_Linux_x86_64.tar.gz
# Or specific version (replace v1.0.1 with desired version)
# wget https://github.com/kktae/auto-mzstudy/releases/download/v1.0.1/auto-mzstudy_Linux_x86_64.tar.gz

tar -xzf auto-mzstudy_Linux_x86_64.tar.gz
chmod +x auto-mzstudy

Linux (ARM64)

# Using latest release
wget https://github.com/kktae/auto-mzstudy/releases/latest/download/auto-mzstudy_Linux_arm64.tar.gz
# Or specific version (replace v1.0.1 with desired version)
# wget https://github.com/kktae/auto-mzstudy/releases/download/v1.0.1/auto-mzstudy_Linux_arm64.tar.gz

tar -xzf auto-mzstudy_Linux_arm64.tar.gz
chmod +x auto-mzstudy

macOS (Intel)

# Using latest release
wget https://github.com/kktae/auto-mzstudy/releases/latest/download/auto-mzstudy_Darwin_x86_64.tar.gz
# Or specific version (replace v1.0.1 with desired version)
# wget https://github.com/kktae/auto-mzstudy/releases/download/v1.0.1/auto-mzstudy_Darwin_x86_64.tar.gz

tar -xzf auto-mzstudy_Darwin_x86_64.tar.gz
chmod +x auto-mzstudy

macOS (Apple Silicon)

# Using latest release
wget https://github.com/kktae/auto-mzstudy/releases/latest/download/auto-mzstudy_Darwin_arm64.tar.gz
# Or specific version (replace v1.0.1 with desired version)
# wget https://github.com/kktae/auto-mzstudy/releases/download/v1.0.1/auto-mzstudy_Darwin_arm64.tar.gz

tar -xzf auto-mzstudy_Darwin_arm64.tar.gz
chmod +x auto-mzstudy

Windows (x86_64)

  1. Download auto-mzstudy_Windows_x86_64.zip from latest release
  2. Or download specific version from releases page
  3. Extract the ZIP file
  4. Open Command Prompt or PowerShell in the extracted directory

Windows (ARM64)

  1. Download auto-mzstudy_Windows_arm64.zip from latest release
  2. Or download specific version from releases page
  3. Extract the ZIP file
  4. Open Command Prompt or PowerShell in the extracted directory

Step 2: Configure Environment

Create a .env file in the same directory as the binary:

# Required: MZStudy Account Credentials
MZSTUDY_ID=your_email@example.com
MZSTUDY_PW=your_password

# Optional: Basic Settings
MZSTUDY_BASE_URL=https://mz.livestudy.com
ATTENDANCE_INTERVAL=5
MAX_CONCURRENT_JOBS=2
REQUEST_TIMEOUT=30

# Optional: Parallel Processing (for faster completion)
USE_PARALLEL_ATTENDANCE=true
PARALLEL_ATTENDANCE_WORKERS=2
LOGIDS_PER_PAGE=5
LOGID_UPDATE_INTERVAL=3
LESSON_COMPLETION_CHECK_INTERVAL=5

# Optional: Completion Settings
MIN_COMPLETION_PERCENT=100.0
MAX_LESSON_DURATION=120

# Optional: Logging
LOG_LEVEL=info

Step 3: Run the Application

Linux/macOS:

./auto-mzstudy

Windows:

auto-mzstudy.exe

Configuration Reference

Required Settings

Variable Description Example
MZSTUDY_ID Your MZStudy login email user@company.com
MZSTUDY_PW Your MZStudy password mypassword

Performance Settings

Variable Description Default Effect
USE_PARALLEL_ATTENDANCE Enable parallel processing true Significantly faster completion
PARALLEL_ATTENDANCE_WORKERS Number of parallel workers 2 More workers = faster processing
LOGIDS_PER_PAGE Time acceleration factor 5 Higher = faster (5x speed)
MAX_CONCURRENT_JOBS Concurrent courses 2 Process multiple courses simultaneously

Time Acceleration Examples

Based on LOGIDS_PER_PAGE setting:

  • LOGIDS_PER_PAGE=3: 48-minute course completes in ~16 minutes
  • LOGIDS_PER_PAGE=5: 48-minute course completes in ~10 minutes
  • LOGIDS_PER_PAGE=10: 48-minute course completes in ~5 minutes

Logging Levels

Level Description Use Case
debug All details Development/troubleshooting
info Progress updates Normal operation
warn Warnings only Minimal output
error Errors only Silent operation

Features

  • Parallel Processing: Multiple courses processed simultaneously
  • Time Acceleration: Up to 10x faster completion using parallel attendance
  • Session Management: Automatic login and session handling
  • Progress Tracking: Real-time completion status
  • Graceful Shutdown: Safe interruption with Ctrl+C
  • Structured Logging: Configurable log levels with detailed output

Usage Tips

  1. Start with default settings - The default configuration works well for most users
  2. Monitor initial runs - Use LOG_LEVEL=info to see progress
  3. Adjust for speed - Increase LOGIDS_PER_PAGE for faster completion
  4. Safe interruption - Use Ctrl+C to stop gracefully
  5. Multiple accounts - Create separate directories with different .env files

Troubleshooting

Login Issues:

  • Verify credentials in .env file
  • Check if MZStudy website is accessible
  • Set LOG_LEVEL=debug for detailed output

Performance Issues:

  • Reduce LOGIDS_PER_PAGE if experiencing timeouts
  • Lower PARALLEL_ATTENDANCE_WORKERS for slower systems
  • Increase REQUEST_TIMEOUT for slow connections

General Issues:

  • Ensure binary has execute permissions (Linux/macOS)
  • Check .env file is in the same directory as binary
  • Review logs with LOG_LEVEL=debug

Build from Source (Optional)

If you prefer to build from source:

git clone https://github.com/kktae/auto-mzstudy.git
cd auto-mzstudy
go build -o auto-mzstudy cmd/main.go

License

MIT License


Disclaimer: This tool is for educational purposes only. Please review actual course content separately after completion.

About

Automation MZStudy for me

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages