From 7364dc04a681556afafd066cb13dbe7af4cdb264 Mon Sep 17 00:00:00 2001 From: Yunseok Date: Thu, 23 May 2024 03:28:07 +0900 Subject: [PATCH 1/5] :) --- .gitignore | 1 + README_ko_kr.md | 10 ++++++++++ main.py | 3 +-- requirments.txt | 3 +-- setup.py | 26 ++++++++++++++++++++++++++ 5 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 .gitignore create mode 100644 README_ko_kr.md create mode 100644 setup.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c795b05 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +build \ No newline at end of file diff --git a/README_ko_kr.md b/README_ko_kr.md new file mode 100644 index 0000000..8a2ec25 --- /dev/null +++ b/README_ko_kr.md @@ -0,0 +1,10 @@ +# eft-where-am-i +- `Tarkov-Market`의 `Maps` 기능을 손쉽게 사용할 수 있도록 도와주는 Python + GUI 프로그램입니다. +- [Rok님의 게시글 및 소스코드](https://gall.dcinside.com/m/eft/2143712)를 기반으로 작성했습니다. +- 본 프로그램은 `MIT 라이선스`이며 **본 프로그램으로 인한 어떠한 피해에도 책임지지 않습니다.** + +## 사용 방법 +![screenshot01](assets/screenshot01.png) +- **맵을 고른 후 꼭 `적용` 버튼을 눌러주세요!** +- 이 앱은 스크린샷 키가 눌릴 때 작동합니다. **타르코프의 기본 스크린샷 키는 `PrtSc` 키입니다.** +- Press to Record` 버튼을 통해 원하는 키로 변경이 가능하며 이 설정은 계속 유지됩니다! diff --git a/main.py b/main.py index 24fef25..b806fcf 100644 --- a/main.py +++ b/main.py @@ -60,7 +60,6 @@ def checkLocation(): break if screenshot is None: - print("Error: Cant find Screenshot Files.") return textArea = driver.find_element(By.XPATH,'//*[@id="__nuxt"]/div/div/div[2]/div/div/div[1]/div[2]/button') @@ -82,7 +81,7 @@ def checkLocation(): with open(txt_file_path, 'r') as file: trigger = file.read().strip() else: - trigger = None + trigger = 'print screen' chrome_options = Options() chrome_options.add_experimental_option("detach", True) diff --git a/requirments.txt b/requirments.txt index 2b6dab4..f7526c1 100644 --- a/requirments.txt +++ b/requirments.txt @@ -1,4 +1,3 @@ keyboard==0.13.5 -pyinstaller==6.6.0 -pyinstaller-hooks-contrib==2024.6 +cx-Freeze==7.0.0 selenium==4.20.0 \ No newline at end of file diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..4934be9 --- /dev/null +++ b/setup.py @@ -0,0 +1,26 @@ +from cx_Freeze import setup, Executable + +name = "EFT Where am I" +version = "1.0" +description = "Description of EFT Where am I" + +executables = [ + Executable("main.py", base="Win32GUI", target_name="EFT_Where_am_I.exe") +] + +options = { + 'build_exe': { + 'packages': ["keyboard", "selenium"], + 'includes': [], + 'include_files': [], + 'excludes': [], + } +} + +setup( + name=name, + version=version, + description=description, + options=options, + executables=executables +) From 1f31635bb34ec31219a9db5ed67d83f9d2c6f0b6 Mon Sep 17 00:00:00 2001 From: Yunseok Date: Thu, 23 May 2024 03:52:28 +0900 Subject: [PATCH 2/5] =?UTF-8?q?=EA=B0=95=EC=A0=9C=EC=8B=A4=ED=96=89=20?= =?UTF-8?q?=EB=B2=84=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/main.py b/main.py index b806fcf..1da3952 100644 --- a/main.py +++ b/main.py @@ -25,6 +25,7 @@ def set_trigger(event): with open(txt_file_path, 'w') as file: file.write(trigger) label3.config(text=f'Now: \"{trigger}\"') + keyboard.add_hotkey(trigger, lambda: checkLocation()) def get_latest_file(folder_path): files = glob.glob(os.path.join(folder_path, '*')) @@ -92,8 +93,6 @@ def checkLocation(): keyboard.add_hotkey(trigger, lambda: checkLocation()) - - # 색상 변수 bg_color = 'gray' box_color = '#333333' @@ -166,7 +165,11 @@ def open_url(url): label3.grid(row=1, column=0, columnspan=3, pady=(0, 10)) b2 = Button(frame2, text='Press to Record', command=lambda: keyboard.hook(set_trigger), font=('Helvetica', 16)) -b2.grid(row=2, column=0, columnspan=3, pady=(10, 10)) +b2.grid(row=2, column=0, pady=(10, 10)) + +# 강제 실행 버튼 추가 +b_force = Button(frame2, text='Force Run', command=checkLocation, font=('Helvetica', 16)) +b_force.grid(row=2, column=1, pady=(10, 10), padx=(10, 0)) b3 = Button(main_frame, text='How to use', font=('Helvetica', 12, 'bold'), bg=bg_color, fg="#0645AD", command=lambda: open_url("https://github.com/karpitony/eft-where-am-i/blob/main/README.md")) b3.grid(row=2, column=0, pady=(10, 10)) @@ -174,4 +177,4 @@ def open_url(url): b4 = Button(main_frame, text='사용 방법', font=('Helvetica', 12, 'bold'), bg=bg_color, fg="#0645AD", command=lambda: open_url("https://github.com/karpitony/eft-where-am-i/blob/main/README_ko_kr.md")) b4.grid(row=3, column=0) -window.mainloop() \ No newline at end of file +window.mainloop() From bef0697c4aa3562a85cefa86b5b9d64cc17a0f04 Mon Sep 17 00:00:00 2001 From: Yunseok Date: Thu, 23 May 2024 04:00:02 +0900 Subject: [PATCH 3/5] Edit README.md --- README.md | 5 +++-- README_ko_kr.md | 3 ++- assets/screenshot01.png | Bin 17686 -> 18971 bytes 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 8a2ec25..83931d2 100644 --- a/README.md +++ b/README.md @@ -6,5 +6,6 @@ ## 사용 방법 ![screenshot01](assets/screenshot01.png) - **맵을 고른 후 꼭 `적용` 버튼을 눌러주세요!** -- 이 앱은 스크린샷 키가 눌릴 때 작동합니다. **타르코프의 기본 스크린샷 키는 `PrtSc` 키입니다.** -- Press to Record` 버튼을 통해 원하는 키로 변경이 가능하며 이 설정은 계속 유지됩니다! +- ~~이 앱은 스크린샷 키가 눌릴 때 작동합니다. **타르코프의 기본 스크린샷 키는 `PrtSc` 키입니다.**~~ +- 코딩 이슈로 일단 스샷을 찍고 `Force Run` 버튼을 눌러주세요. +- Press to Record` 버튼을 통해 원하는 키로 변경이 가능하며 이 설정은 계속 유지됩니다! \ No newline at end of file diff --git a/README_ko_kr.md b/README_ko_kr.md index 8a2ec25..46c2aa3 100644 --- a/README_ko_kr.md +++ b/README_ko_kr.md @@ -6,5 +6,6 @@ ## 사용 방법 ![screenshot01](assets/screenshot01.png) - **맵을 고른 후 꼭 `적용` 버튼을 눌러주세요!** -- 이 앱은 스크린샷 키가 눌릴 때 작동합니다. **타르코프의 기본 스크린샷 키는 `PrtSc` 키입니다.** +- ~~이 앱은 스크린샷 키가 눌릴 때 작동합니다. **타르코프의 기본 스크린샷 키는 `PrtSc` 키입니다.**~~ +- 코딩 이슈로 일단 스샷을 찍고 `Force Run` 버튼을 눌러주세요. - Press to Record` 버튼을 통해 원하는 키로 변경이 가능하며 이 설정은 계속 유지됩니다! diff --git a/assets/screenshot01.png b/assets/screenshot01.png index 5ed77e51918c3063a4b9d4a932d91251cc03fe4a..b16003f06eb390b507e1788658ac6a5196292504 100644 GIT binary patch literal 18971 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 uz0AH?=;`G>3raWab>8i26{lI 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 E1?-MbWdHyG From 731c9c7c8beaf62439cc81dfc3a2240268ba4397 Mon Sep 17 00:00:00 2001 From: Yunseok Date: Thu, 23 May 2024 04:00:09 +0900 Subject: [PATCH 4/5] Hotfix --- main.py | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/main.py b/main.py index 1da3952..c53ceb7 100644 --- a/main.py +++ b/main.py @@ -13,11 +13,13 @@ def change_map() -> None: global map global site_url + global where_am_i_click select_map = combobox.get() if map != select_map: site_url = f"https://tarkov-market.com/maps/{select_map}" map = select_map driver.get(site_url) + where_am_i_click=False def set_trigger(event): global trigger @@ -62,20 +64,31 @@ def checkLocation(): if screenshot is None: return - - textArea = driver.find_element(By.XPATH,'//*[@id="__nuxt"]/div/div/div[2]/div/div/div[1]/div[2]/button') - textArea.click() - textArea2 = driver.find_element(By.XPATH,'//*[@id="__nuxt"]/div/div/div[2]/div/div/div[1]/div[2]/input') - textArea2.click() - textArea2.send_keys(Keys.DELETE) - textArea2.send_keys(screenshot.replace(".png","")) - changeMarker() + + global where_am_i_click + if where_am_i_click == False: + where_am_i_click = True + textArea = driver.find_element(By.XPATH,'//*[@id="__nuxt"]/div/div/div[2]/div/div/div[1]/div[2]/button') + textArea.click() + textArea2 = driver.find_element(By.XPATH,'//*[@id="__nuxt"]/div/div/div[2]/div/div/div[1]/div[2]/input') + textArea2.click() + textArea2.send_keys(Keys.DELETE) + textArea2.send_keys(screenshot.replace(".png","")) + changeMarker() + else: + textArea2 = driver.find_element(By.XPATH,'//*[@id="__nuxt"]/div/div/div[2]/div/div/div[1]/div[2]/input') + textArea2.click() + textArea2.send_keys(Keys.DELETE) + textArea2.send_keys(screenshot.replace(".png","")) + changeMarker() mapList = ['ground-zero', 'factory', 'customs', 'interchange', 'woods', 'shoreline', 'lighthouse', 'reserve', 'streets', 'lab'] map = "ground-zero" site_url = f"https://tarkov-market.com/maps/{map}" txt_file_path = 'key_data.txt' +where_am_i_click = False # where am i 클릭 되어 있으면 값만 입력하게끔 + # 스크린샷 및 위치 표시할 키 불러오기 if os.path.exists(txt_file_path): @@ -101,7 +114,7 @@ def checkLocation(): # UI 생성 window = Tk() window.geometry("500x600") -window.title("EFT Where am I? v1.0") +window.title("EFT Where am I? v1.1") window.resizable(False, False) window.configure(bg=bg_color) From d9307baf1a50dfdb1be12da5f819ad67b15c2d56 Mon Sep 17 00:00:00 2001 From: Yunseok Date: Thu, 23 May 2024 04:00:44 +0900 Subject: [PATCH 5/5] version 1.1 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 4934be9..1aceeb4 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ from cx_Freeze import setup, Executable name = "EFT Where am I" -version = "1.0" +version = "1.1" description = "Description of EFT Where am I" executables = [