95 lines
3.2 KiB
Python
95 lines
3.2 KiB
Python
import PySimpleGUI as sg
|
|
|
|
# First the window layout in 2 columns
|
|
from main import start_book
|
|
from pojo.ModeEnum import ModeEnum
|
|
|
|
KEY_CHOOSE_STORE = "CHOOSE_STORE"
|
|
KEY_START_NUMBER = "KEY_START_NUMBER"
|
|
KEY_END_NUMBER = "KEY_END_NUMBER"
|
|
KEY_MAX_WORKERS = "KEY_MAX_WORKERS"
|
|
KEY_RANDOM = "KEY_RANDOM"
|
|
KEY_PROXY_RES = "KEY_PROXY_RES"
|
|
KEY_PROXY_CC = "KEY_PROXY_CC"
|
|
KEY_FAUBOURG = "KEY_FAUBOURG"
|
|
KEY_GEORGE = "KEY_GEORGE"
|
|
KEY_SEVRES = "KEY_SEVRES"
|
|
KEY_AUTOMATIC = "KEY_AUTOMATIC"
|
|
KEY_MANUAL = "KEY_MANUAL"
|
|
GROUP_MODE = "GROUP_MODE"
|
|
GROUP_STORE = "STORE"
|
|
GROUP_PROXY = "GROUP_PROXY"
|
|
|
|
file_list_column = [
|
|
[sg.Text('请输入联系人表的起始和结束行')],
|
|
[sg.Text('起始行', size=(15, 1)), sg.InputText(tooltip="起始行", key=KEY_START_NUMBER)],
|
|
[sg.Text('结束行', size=(15, 1)), sg.InputText(tooltip="结束行", key=KEY_END_NUMBER)],
|
|
[sg.Text('并发数', size=(15, 1)), sg.InputText(tooltip="结束行", key=KEY_MAX_WORKERS, default_text=10)],
|
|
[sg.Submit(button_text="运行", key="submit")]
|
|
]
|
|
# For now will only show the name of the file that was chosen
|
|
store_settings_column = [
|
|
[sg.Text("目标商店")],
|
|
[sg.Radio('随机', group_id=GROUP_STORE, key=KEY_RANDOM, default=True)],
|
|
[sg.Radio('Hermès Faubourg Saint-Honoré', group_id=GROUP_STORE, key=KEY_FAUBOURG, default=False)],
|
|
[sg.Radio('Hermès George V', group_id=GROUP_STORE, key=KEY_GEORGE, default=False)],
|
|
[sg.Radio('Hermès Sèvres', group_id=GROUP_STORE, key=KEY_SEVRES, default=False)]
|
|
]
|
|
proxy_settings_column = [
|
|
[sg.Text("代理ip池")],
|
|
[sg.Radio('res(速度)', group_id=GROUP_PROXY, key=KEY_PROXY_RES, default=True)],
|
|
[sg.Radio('cc(稳定)', group_id=GROUP_PROXY, key=KEY_PROXY_CC, default=False)],
|
|
]
|
|
|
|
mode_settings_column = [
|
|
[sg.Text("约会模式")],
|
|
[sg.Radio('手动', group_id=GROUP_MODE, key=KEY_MANUAL, default=True)],
|
|
[sg.Radio('自动', group_id=GROUP_MODE, key=KEY_AUTOMATIC, default=False)],
|
|
]
|
|
# ----- Full layout -----
|
|
layout = [
|
|
[
|
|
sg.Column(file_list_column),
|
|
sg.Column(store_settings_column),
|
|
sg.Column(proxy_settings_column),
|
|
sg.Column(mode_settings_column)
|
|
]
|
|
]
|
|
|
|
window = sg.Window("爱马仕约会", layout)
|
|
|
|
while True:
|
|
event, values = window.read()
|
|
print(event)
|
|
print(values)
|
|
if event == "submit":
|
|
# try:
|
|
start_line = int(values[KEY_START_NUMBER])
|
|
end_line = int(values[KEY_END_NUMBER])
|
|
max_workers = int(values[KEY_MAX_WORKERS])
|
|
store_type = 0
|
|
mode = ModeEnum.MANUAL
|
|
if values[KEY_FAUBOURG]:
|
|
store_type = 1
|
|
elif values[KEY_GEORGE]:
|
|
store_type = 2
|
|
elif values[KEY_SEVRES]:
|
|
store_type = 3
|
|
|
|
proxy_type = 0
|
|
if values[KEY_PROXY_CC]:
|
|
proxy_type = 1
|
|
elif values[KEY_PROXY_RES]:
|
|
proxy_type = 0
|
|
|
|
if values[KEY_AUTOMATIC]:
|
|
mode = ModeEnum.AUTOMATIC
|
|
start_book(start_line, end_line, store_choose_state=store_type, max_workers=max_workers, proxy_type=proxy_type,
|
|
mode=mode)
|
|
# except Exception as error:
|
|
# print("Not Integer: ")
|
|
# print(error)
|
|
|
|
elif event == "Exit" or event == sg.WIN_CLOSED:
|
|
break
|