njongto_duo 0.0.55 → 0.0.57

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/njongto_duo.rb +40 -7
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6ef4be51b68dc733fdc09944b0e8e1d9f7c13dd5cd03e9e76e2d53928f917ffd
4
- data.tar.gz: c329a56e94668a32cee4eba632da34db807b59488c0d401226841ec928fb1424
3
+ metadata.gz: 6f9c00160b80ce0d5e853626d8a7325ccbc672dffd39be29507c8b16c388f0ad
4
+ data.tar.gz: dacc0ac014dd05857ba9c5e291c01ba208cd57939bd6a54dbdcf9a24a1c777c2
5
5
  SHA512:
6
- metadata.gz: 640a6e99a903e582b4c447476580c808d2ef1232a7203905e12a39b2adfe1f9f0f88a0bdaaaab8a0ce636bb9866b265672938bbe0296dd3ace0f3fd5ebc58116
7
- data.tar.gz: f38f6b29aea3892b0192b863adebea6b4b6ddce15c5b8c3bec59805b4c9e345be4f338ace5f297878cdb95cfdd83779f08d9a637cf861eb825dc04240414643d
6
+ metadata.gz: 2ac991fa8487c1e7bbdfc30f580c5f8f29599aa6ba45a661dfaed2898323cc2d2db8d105107e7e96149ada0fe335bfc96885e0355a338e5bd2a71fb05f0f21ad
7
+ data.tar.gz: 55a544a409d0911174d257e11a731ff97e21f206af903065899643e165cc6af835887491944230b22e94a677d715bb10cec47eb4136e6243844350509ac01177
data/lib/njongto_duo.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'
@@ -25,14 +25,39 @@ include Glimmer
25
25
  class Naver
26
26
  def initialize
27
27
  @seed = 1
28
+
29
+ begin
30
+ # webdrivers가 사용자의 Chrome 버전에 맞는 chromedriver 다운로드 시도
31
+
32
+ # Webdrivers가 드라이버를 다운로드할 경로를 설정
33
+ Webdrivers.cache_time = 86_400 # 하루로 설정 (기본값: 86_400초)
34
+ Webdrivers.install_dir = "./" # 크롬드라이버를 수동으로 설치할 경로를 설정
35
+ # 크롬드라이버 자동 업데이트 시도
36
+ Webdrivers::Chromedriver.update
37
+ puts "chromedriver 자동 다운로드 성공"
38
+ rescue => e
39
+ puts "chromedriver 자동 다운로드 실패: #{e.message}"
40
+ puts "폴더내 크롬드라이버를 사용합니다."
41
+ puts "크롬드라이버가 오래된 경우 오류 발생될 수 있으며, 만일 오류 발생시 아래 지침을 따라주세요."
42
+ puts "1.크롬 업데이트 2.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일을 열어 드라이버를 교체하세요."
43
+ chromedriver_path = './chromedriver.exe' # 수동 경로를 인스턴스 변수로 설정
44
+ Selenium::WebDriver::Chrome::Service.driver_path = chromedriver_path
45
+ end
46
+
28
47
  end
48
+
49
+
29
50
  def chrome_setup(user_id, proxy)
30
51
  naver_cookie_dir = "C:/naver_cookie"
31
52
  FileUtils.mkdir_p(naver_cookie_dir) unless File.exist?(naver_cookie_dir)
32
53
  if proxy == ''
33
- system(%{"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" https://naver.com/ --remote-debugging-port=9222 --user-data-dir=C:/naver_cookie/#{user_id}})
54
+
55
+ system(%{"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" https://naver.com/ --remote-debugging-port=9222 --user-data-dir=C:/naver_cookie/#{user_id} --no-first-run --no-default-browser-check --disable-sync})
56
+
34
57
  else
35
- system(%{"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" "https://naver.com/" --remote-debugging-port=9222 --user-data-dir=C:/naver_cookie/#{user_id} --proxy-server=#{proxy.to_s.force_encoding('utf-8').to_s}})
58
+
59
+ system(%{"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" https://naver.com/ --remote-debugging-port=9222 --user-data-dir=C:/naver_cookie/#{user_id} --proxy-server=#{proxy.to_s.force_encoding('utf-8').to_s} --no-first-run --no-default-browser-check --disable-sync})
60
+
36
61
  end
37
62
  end
38
63
  def chrome_start(proxy, user_id)
@@ -40,10 +65,12 @@ class Naver
40
65
  FileUtils.mkdir_p(naver_cookie_dir) unless File.exist?(naver_cookie_dir)
41
66
  if proxy == ''
42
67
  begin
43
- Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
44
68
  options = Selenium::WebDriver::Chrome::Options.new
45
69
  options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
46
- options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
70
+ #options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
71
+ options.add_argument('--disable-sync') # Chrome 동기화 비활성화
72
+ options.add_argument('--disable-popup-blocking') # 팝업 방지 (로그인 창이 뜨는 경우 대비)
73
+ options.add_argument('--no-default-browser-check')
47
74
  options.page_load_strategy = :normal
48
75
  options.timeouts = {page_load: 20_000}
49
76
  options.page_load_strategy = 'none'
@@ -65,10 +92,13 @@ class Naver
65
92
  end
66
93
  else
67
94
  begin
68
- Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
95
+ #Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
69
96
  options = Selenium::WebDriver::Chrome::Options.new
70
97
  options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
71
98
  options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
99
+ options.add_argument('--disable-sync') # Chrome 동기화 비활성화
100
+ options.add_argument('--disable-popup-blocking') # 팝업 방지 (로그인 창이 뜨는 경우 대비)
101
+ options.add_argument('--no-default-browser-check')
72
102
  options.add_argument '--proxy-server='+proxy.to_s.force_encoding('utf-8').to_s
73
103
  options.page_load_strategy = :normal
74
104
  options.timeouts = {page_load: 20_000}
@@ -89,10 +119,13 @@ class Naver
89
119
  puts e
90
120
  puts 'proxy error...'
91
121
  begin
92
- Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
122
+ #Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
93
123
  options = Selenium::WebDriver::Chrome::Options.new
94
124
  options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
95
125
  options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
126
+ options.add_argument('--disable-sync') # Chrome 동기화 비활성화
127
+ options.add_argument('--disable-popup-blocking') # 팝업 방지 (로그인 창이 뜨는 경우 대비)
128
+ options.add_argument('--no-default-browser-check')
96
129
  options.page_load_strategy = :normal
97
130
  options.timeouts = {page_load: 20_000}
98
131
  options.page_load_strategy = 'none'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: njongto_duo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.55
4
+ version: 0.0.57
5
5
  platform: ruby
6
6
  authors:
7
7
  - zon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-02-21 00:00:00.000000000 Z
11
+ date: 2025-03-07 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: File to Clipboard gem
14
14
  email: mymin26@naver.com