duo_blog_comment 0.0.35 → 0.0.37

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/duo_blog_comment.rb +86 -28
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 348dcb308a9da3f7135d5a4d456d32a24b999fbc31a2802bf1009cbfd1431b65
4
- data.tar.gz: 250defd1ec6db06c3ae2acb98d60054131a7f48b9867bf4116fc013358c7af58
3
+ metadata.gz: 6fd80b9a56b0cc92eca30ad4b540541bdc93470658bca962ac88802f425dd74c
4
+ data.tar.gz: 587f72a14bd51043af6d3bf69aafe156096c979f8c5318e6d240961558d8e171
5
5
  SHA512:
6
- metadata.gz: 7dcaa772d5fd685e5f57789630ff9a1171cc0e65e4fbf9742483e96ca367d2ba1922b5c32f06907f180230a67f4dad554fd8c49d4e1ed345d0491dc8ab66bda3
7
- data.tar.gz: fb36b9d27d8064be8a06613aecad52e088f2e87ff0b7387e63dbf62e643345f577e4438833d1725415f8ff9c14cc1c7b5e0d86b8de2275c15e1237196b43ee9c
6
+ metadata.gz: 9454a3b23458c6a157a4a2060e6116360119593a4158115aa8418357bc8748e72ea07c347dfe086584242c467254ede42e4aa266c28109c12f2c93e1b4cdca0b
7
+ data.tar.gz: 684742fb7cfca1527af0e2d965e04884862187478644fd54192a181c0396145be18842b88902ed3b543b987fb85af853e892b6bb7dc34182af13f25d58babf5b
@@ -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'
@@ -24,25 +24,6 @@ include Glimmer
24
24
  class Naver
25
25
  def initialize
26
26
  @seed = 1
27
-
28
- begin
29
- # webdrivers가 사용자의 Chrome 버전에 맞는 chromedriver 다운로드 시도
30
-
31
- # Webdrivers가 드라이버를 다운로드할 경로를 설정
32
- Webdrivers.cache_time = 86_400 # 하루로 설정 (기본값: 86_400초)
33
- Webdrivers.install_dir = "./" # 크롬드라이버를 수동으로 설치할 경로를 설정
34
- # 크롬드라이버 자동 업데이트 시도
35
- Webdrivers::Chromedriver.update
36
- puts "chromedriver 자동 다운로드 성공"
37
- rescue => e
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
44
- end
45
-
46
27
  end
47
28
 
48
29
 
@@ -64,6 +45,18 @@ class Naver
64
45
  FileUtils.mkdir_p(naver_cookie_dir) unless File.exist?(naver_cookie_dir)
65
46
  if proxy == ''
66
47
  begin
48
+ begin
49
+ Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
50
+ rescue => e
51
+ puts "chromedriver 버전 불일치!!"
52
+ puts "아래 지침을 따라주세요."
53
+ puts "1.프로그램 종료!"
54
+ puts "2.크롬 업데이트!"
55
+ puts "3.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일 실행"
56
+ puts "4.안내된 방식으로 크롬 드라이버 교체"
57
+ puts "5.재 시작"
58
+ exit 1
59
+ end
67
60
  options = Selenium::WebDriver::Chrome::Options.new
68
61
  options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
69
62
  #options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
@@ -91,7 +84,18 @@ class Naver
91
84
  end
92
85
  else
93
86
  begin
94
- #Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
87
+ begin
88
+ Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
89
+ rescue => e
90
+ puts "chromedriver 버전 불일치!!"
91
+ puts "아래 지침을 따라주세요."
92
+ puts "1.프로그램 종료!"
93
+ puts "2.크롬 업데이트!"
94
+ puts "3.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일 실행"
95
+ puts "4.안내된 방식으로 크롬 드라이버 교체"
96
+ puts "5.재 시작"
97
+ exit 1
98
+ end
95
99
  options = Selenium::WebDriver::Chrome::Options.new
96
100
  options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
97
101
  options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
@@ -118,7 +122,18 @@ class Naver
118
122
  puts e
119
123
  puts 'proxy error...'
120
124
  begin
121
- #Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
125
+ begin
126
+ Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
127
+ rescue => e
128
+ puts "chromedriver 버전 불일치!!"
129
+ puts "아래 지침을 따라주세요."
130
+ puts "1.프로그램 종료!"
131
+ puts "2.크롬 업데이트!"
132
+ puts "3.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일 실행"
133
+ puts "4.안내된 방식으로 크롬 드라이버 교체"
134
+ puts "5.재 시작"
135
+ exit 1
136
+ end
122
137
  options = Selenium::WebDriver::Chrome::Options.new
123
138
  options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
124
139
  options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
@@ -260,12 +275,13 @@ class Naver
260
275
 
261
276
 
262
277
 
263
- def update(content,image,option,counts_number,keyword,blog_url,api_key)
278
+ def update(content,image,option,counts_number,keyword,blog_url,api_key,counts_delay)
264
279
 
265
280
  @keyword = keyword
266
281
  @content = content
267
282
  @api_key = api_key
268
283
  @blog_url = blog_url
284
+ #sleep(counts_delay)
269
285
 
270
286
 
271
287
 
@@ -1239,6 +1255,27 @@ class Naver
1239
1255
  end
1240
1256
  end
1241
1257
  sleep(1)
1258
+ if option['비공개댓글'] == 'true'
1259
+ begin
1260
+ @driver.find_element(:xpath, '//*[@class="u_cbox_secret_label"]').click
1261
+ sleep(1)
1262
+ rescue
1263
+ begin
1264
+ @driver.find_element(:xpath, '//*[@class="u_cbox_secret_check"]').click
1265
+ sleep(1)
1266
+ rescue
1267
+ begin
1268
+ @driver.find_element(:xpath, '//*[@class="u_cbox_txt_secret"]').click
1269
+ sleep(1)
1270
+ rescue
1271
+ end
1272
+ end
1273
+ end
1274
+ else
1275
+ # 여기에 다른 코드 추가 가능
1276
+ end
1277
+
1278
+
1242
1279
  begin
1243
1280
  element = @driver.find_element(:xpath, '//*[@data-uiselector="writeButton"]')
1244
1281
  @driver.execute_script("arguments[0].scrollIntoView({block: 'center', inline: 'center'})", element) # 크롤 이동
@@ -1269,6 +1306,11 @@ class Naver
1269
1306
  end
1270
1307
  posting_url = @driver.current_url
1271
1308
  puts "#{posting_url} [댓글 작성 완료 !!]".cyan
1309
+
1310
+ begin
1311
+ sleep(counts_delay)
1312
+ rescue
1313
+ end
1272
1314
 
1273
1315
  sleep(2)
1274
1316
  begin
@@ -1780,7 +1822,7 @@ class Wordpress
1780
1822
 
1781
1823
 
1782
1824
 
1783
- if @data['포스트설정']['공유하기'].checked?
1825
+ if @data['포스트설정']['공유하기'].checked?
1784
1826
  option['공유하기'] = 'true'
1785
1827
  else
1786
1828
  option['공유하기'] = 'false'
@@ -1791,7 +1833,7 @@ class Wordpress
1791
1833
  else
1792
1834
  option['공유하기비공개'] = 'false'
1793
1835
  end
1794
- @data['table'][index][-1] = 85
1836
+ @data['table'][index][-1] = 80
1795
1837
  @data['table'] << []
1796
1838
  @data['table'].pop
1797
1839
 
@@ -1802,10 +1844,18 @@ class Wordpress
1802
1844
  else
1803
1845
  option['댓글패스'] = 'false'
1804
1846
  end
1805
- @data['table'][index][-1] = 90
1847
+ @data['table'][index][-1] = 85
1806
1848
  @data['table'] << []
1807
1849
  @data['table'].pop
1808
1850
 
1851
+ if @data['포스트설정']['비공개댓글'].checked?
1852
+ option['비공개댓글'] = 'true'
1853
+ else
1854
+ option['비공개댓글'] = 'false'
1855
+ end
1856
+ @data['table'][index][-1] = 90
1857
+ @data['table'] << []
1858
+ @data['table'].pop
1809
1859
 
1810
1860
 
1811
1861
 
@@ -1842,8 +1892,9 @@ class Wordpress
1842
1892
 
1843
1893
  # 댓글 설정 수 카운트
1844
1894
  counts_number = @data['table'][index][6].to_i
1895
+ counts_delay = @data['table'][index][5].to_i
1845
1896
  api_key = @data['포스트설정']['api_key'].text.to_s.force_encoding('utf-8')
1846
- naver.update(content,image,option,counts_number,keyword,blog_url,api_key)
1897
+ naver.update(content,image,option,counts_number,keyword,blog_url,api_key,counts_delay)
1847
1898
 
1848
1899
 
1849
1900
 
@@ -3164,9 +3215,16 @@ class Wordpress
3164
3215
  end
3165
3216
  }
3166
3217
  }
3218
+ @data['포스트설정']['비공개댓글'] = checkbox('🔒비공개 댓글   '){
3219
+ top 1
3220
+ left 3
3221
+ on_toggled{
3222
+
3223
+ }
3224
+ }
3167
3225
  @data['포스트설정']['댓글패스'] = checkbox('🔙이미 작성한 댓글이 있는 경우 패스'){
3168
3226
  top 1
3169
- left 3
3227
+ left 4
3170
3228
  on_toggled{
3171
3229
 
3172
3230
  }
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: duo_blog_comment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.35
4
+ version: 0.0.37
5
5
  platform: ruby
6
6
  authors:
7
7
  - zon
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-04-30 00:00:00.000000000 Z
10
+ date: 2025-05-22 00:00:00.000000000 Z
11
11
  dependencies: []
12
12
  description: File to Clipboard gem
13
13
  email: mymin26@naver.com