njongto_zon 0.0.59 → 0.0.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/njongto_zon.rb +65 -19
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 83a518bee922fac307f444eafb11b4c70b297419fbed6c0440974995c30c046b
|
4
|
+
data.tar.gz: f8f68aa511a98e9b08afa571991763111fbb304eaa57b249cde3840835b126dc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '087b85b0d4fe8effe8036003f0ff9cc5fd6f76ff7d00cebb0e6281490a80ce26064769461bcd3fe41de96f02f8a023a3810db9abf78d2ff6d439b54cfa91a811'
|
7
|
+
data.tar.gz: 30cf066eb40b85a637a392935a64e195d1764a083bd7d9b289a3b2cb13948f92ac6c657e91e25bc33538838594ab3a9c9b645bf9d04fd2209cabfc940ecc553f
|
data/lib/njongto_zon.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'glimmer-dsl-libui'
|
2
2
|
require 'selenium-webdriver'
|
3
|
-
require 'webdrivers'
|
3
|
+
#require 'webdrivers'
|
4
4
|
require 'iconv'
|
5
5
|
require 'nokogiri'
|
6
6
|
require 'http'
|
@@ -16,6 +16,7 @@ require 'uri'
|
|
16
16
|
require 'cgi'
|
17
17
|
require 'auto_click'
|
18
18
|
require 'rainbow/refinement'
|
19
|
+
require 'win32ole'
|
19
20
|
include AutoClickMethods
|
20
21
|
using Rainbow
|
21
22
|
include Glimmer
|
@@ -23,26 +24,37 @@ include Glimmer
|
|
23
24
|
|
24
25
|
class Naver
|
25
26
|
def initialize
|
27
|
+
kill_selenium_chrome #기존 창 모두 닫는 명령
|
28
|
+
sleep(1)
|
26
29
|
@seed = 1
|
30
|
+
end
|
31
|
+
|
32
|
+
def kill_selenium_chrome #기존 창 모두 닫는 코드
|
33
|
+
wmi = WIN32OLE.connect("winmgmts://")
|
34
|
+
chrome_procs = wmi.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'chrome.exe'")
|
27
35
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
puts "chromedriver 자동 다운로드 실패: #{e.message}"
|
39
|
-
puts "폴더내 크롬드라이버를 사용합니다."
|
40
|
-
puts "크롬드라이버가 오래된 경우 오류 발생될 수 있으며, 만일 오류 발생시 아래 지침을 따라주세요."
|
41
|
-
puts "1.크롬 업데이트 2.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일을 열어 드라이버를 교체하세요."
|
42
|
-
chromedriver_path = './chromedriver.exe' # 수동 경로를 인스턴스 변수로 설정
|
43
|
-
Selenium::WebDriver::Chrome::Service.driver_path = chromedriver_path
|
36
|
+
chrome_procs.each do |proc|
|
37
|
+
cmd = proc.CommandLine
|
38
|
+
if cmd && cmd.include?("user-data-dir=C:/naver_cookie")
|
39
|
+
puts "→ 크롬 창 초기화: PID #{proc.ProcessId}"
|
40
|
+
begin
|
41
|
+
proc.Terminate
|
42
|
+
rescue
|
43
|
+
#puts "→ 이미 종료된 프로세스: #{proc.ProcessId}"
|
44
|
+
end
|
45
|
+
end
|
44
46
|
end
|
45
47
|
|
48
|
+
# chromedriver도 같이 종료
|
49
|
+
chromedrivers = wmi.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'chromedriver.exe'")
|
50
|
+
chromedrivers.each do |proc|
|
51
|
+
puts "→ 크롬 창 초기화: PID #{proc.ProcessId}"
|
52
|
+
begin
|
53
|
+
proc.Terminate
|
54
|
+
rescue
|
55
|
+
#puts "→ 이미 종료된 chromedriver: #{proc.ProcessId}"
|
56
|
+
end
|
57
|
+
end
|
46
58
|
end
|
47
59
|
|
48
60
|
|
@@ -64,6 +76,18 @@ class Naver
|
|
64
76
|
FileUtils.mkdir_p(naver_cookie_dir) unless File.exist?(naver_cookie_dir)
|
65
77
|
if proxy == ''
|
66
78
|
begin
|
79
|
+
begin
|
80
|
+
Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
81
|
+
rescue => e
|
82
|
+
puts "chromedriver 버전 불일치!!"
|
83
|
+
puts "아래 지침을 따라주세요."
|
84
|
+
puts "1.프로그램 종료!"
|
85
|
+
puts "2.크롬 업데이트!"
|
86
|
+
puts "3.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일 실행"
|
87
|
+
puts "4.안내된 방식으로 크롬 드라이버 교체"
|
88
|
+
puts "5.재 시작"
|
89
|
+
exit 1
|
90
|
+
end
|
67
91
|
options = Selenium::WebDriver::Chrome::Options.new
|
68
92
|
options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
|
69
93
|
#options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
|
@@ -91,7 +115,18 @@ class Naver
|
|
91
115
|
end
|
92
116
|
else
|
93
117
|
begin
|
94
|
-
|
118
|
+
begin
|
119
|
+
Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
120
|
+
rescue => e
|
121
|
+
puts "chromedriver 버전 불일치!!"
|
122
|
+
puts "아래 지침을 따라주세요."
|
123
|
+
puts "1.프로그램 종료!"
|
124
|
+
puts "2.크롬 업데이트!"
|
125
|
+
puts "3.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일 실행"
|
126
|
+
puts "4.안내된 방식으로 크롬 드라이버 교체"
|
127
|
+
puts "5.재 시작"
|
128
|
+
exit 1
|
129
|
+
end
|
95
130
|
options = Selenium::WebDriver::Chrome::Options.new
|
96
131
|
options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
|
97
132
|
options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
|
@@ -118,7 +153,18 @@ class Naver
|
|
118
153
|
puts e
|
119
154
|
puts 'proxy error...'
|
120
155
|
begin
|
121
|
-
|
156
|
+
begin
|
157
|
+
Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
158
|
+
rescue => e
|
159
|
+
puts "chromedriver 버전 불일치!!"
|
160
|
+
puts "아래 지침을 따라주세요."
|
161
|
+
puts "1.프로그램 종료!"
|
162
|
+
puts "2.크롬 업데이트!"
|
163
|
+
puts "3.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일 실행"
|
164
|
+
puts "4.안내된 방식으로 크롬 드라이버 교체"
|
165
|
+
puts "5.재 시작"
|
166
|
+
exit 1
|
167
|
+
end
|
122
168
|
options = Selenium::WebDriver::Chrome::Options.new
|
123
169
|
options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
|
124
170
|
options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: njongto_zon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.71
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- zon
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-
|
10
|
+
date: 2025-05-29 00:00:00.000000000 Z
|
11
11
|
dependencies: []
|
12
12
|
description: File to Clipboard gem
|
13
13
|
email: mymin26@naver.com
|