Popmart Booking Guide

This Python script automates the booking process for PopMart's booking system, allowing multiple concurrent booking attempts for different users using CSV input.

Table of Contents

1. Prerequisites

  • Python 3.6+

  • Required Python packages:

  • requests

  • pandas

  • loguru

2. Installation

  1. Clone the repository or download the script.

  2. Install required packages:

pip install -r requirements.txt

or

pip install requests pandas loguru

3. Configuration

The script uses the following files:

  • bookings.csv: Contains booking information

  • proxies.txt: (Optional) List of proxies, Keep empty for proxyless

  • booking_logs.log: Log file for all operations

  • booking_success.txt: File to record successful bookings

4. CSV File Format

The bookings.csv file should be structured as follows:

name,id_number,email,contact_number,start_date,end_date,start_time,end_time
John Doe,456322,[email protected],921 6141 424,2024-11-05,2024-11-06,10:00,17:40
Jane Smith,456323,[email protected],921 6141 425,2024-11-07,2024-11-08,09:00,16:30

Field Descriptions:

  • name: Full name of the person `John Doe`

  • id_number: Identification number (6 CHARACTERS) `123456`

  • email: Valid email address `[email protected]`

  • contact_number: Phone number (string, spaces required) `920 1928 181`

  • start_date: Booking start date (YYYY-MM-DD format) `2024-11-04`

  • end_date: Booking end date (YYYY-MM-DD format) `2024-11-04` or `2024-11-06`

  • start_time: Daily booking start time (HH:MM format, 24-hour) `10:00`

  • end_time: Daily booking end time (HH:MM format, 24-hour) `10:00` or `21:40`

Note: The script will attempt bookings for every 20-minute interval between start_time and end_time for each day from start_date to end_date.

VALID HRS: 10:00 to 21:40

5. Running the Script

Execute the script using Python:

py main.py

The script will automatically load the bookings.csv file and start processing bookings.

6. Proxy Usage

To use proxies:

  1. Add one proxy per line in the format: ip:port:username:password

If proxies.txt is not found or is empty, the script will run proxyless.

7. Success Tracking

Successful bookings are:

  1. Logged to the console and booking_logs.log.

  2. Recorded in booking_success.txt with the format:

[Name] Booking successful: Ticket ID - XXXXX, Date - YYYY-MM-DD, Time - HH:MM

This documentation provides a comprehensive guide to using and understanding the automated booking system. For any additional questions or support, please contact the script maintainer.

Last updated