zon_blog_comment 0.0.39 → 0.0.53

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/zon_blog_comment.rb +56 -39
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ae21251e2fca2a00fb92ecba05229c254cbf27888003e3f5a999260e6047a503
4
- data.tar.gz: fee1919177ea0ca0a5e3f5973b4c23bccbfa3147f9350a7536218839feea0b65
3
+ metadata.gz: 77e821eb610cfe128e70712150cd4f75c51090a03ed0e9169a518bb98e0c72c0
4
+ data.tar.gz: 120885f953739fad61894e1a988c6c71d1c39c789e47e47528be5e78b0083a28
5
5
  SHA512:
6
- metadata.gz: 8fcddcc088cb72cd931f22726afac19840a74c40492f66c97445947a85a3a509f837ef78351e92cf1ddf37ab4b8787f4abe6d88d3b7252b2d6a3d02b2dd34e42
7
- data.tar.gz: cf7845fe22a11cc8e20bc8c35bdd824a1c798ca856a88bdd4c74cca007180bbcb65a1f7cc339719c0c40f04ac543ec242e714706c6ccbb51182661f684ba1649
6
+ metadata.gz: a1e06760cd3cc66ba80a54549d3d65f8de468cfbef4608fcdd0823edf8588e2afd3e3dae5071a9edfb23a77737f11139427fdec8be4dd967ddcdf7f33694da89
7
+ data.tar.gz: e38cb7c20d1eb088c65d3c0a4c61c9ebb9bd3c36a22f5d71fa8496f459cf416df8723f2a2d1a90b03c01716d56d73c3764f5a291d8f33fd396ca4e9fe313cf76
@@ -16,48 +16,17 @@ require 'uri'
16
16
  require 'cgi'
17
17
  require 'auto_click'
18
18
  require 'rainbow/refinement'
19
- require 'win32ole'
20
19
  include AutoClickMethods
21
20
  using Rainbow
22
21
  include Glimmer
23
22
 
24
23
 
25
24
  class Naver
26
- def initialize
27
- kill_selenium_chrome #기존 창 모두 닫는 명령
28
- sleep(1)
25
+ def initialize(data)
26
+ @data = data
29
27
  @seed = 1
30
28
  end
31
29
 
32
- def kill_selenium_chrome #기존 창 모두 닫는 코드
33
- wmi = WIN32OLE.connect("winmgmts://")
34
- chrome_procs = wmi.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'chrome.exe'")
35
-
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
46
- end
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
58
- end
59
-
60
-
61
30
  def chrome_setup(user_id, proxy)
62
31
  naver_cookie_dir = "C:/naver_cookie"
63
32
  FileUtils.mkdir_p(naver_cookie_dir) unless File.exist?(naver_cookie_dir)
@@ -306,12 +275,13 @@ class Naver
306
275
 
307
276
 
308
277
 
309
- def update(content,image,option,counts_number,keyword,blog_url,api_key,counts_delay)
278
+ def update(content,image,option,counts_number,keyword,blog_url,api_key,sleep_delay)
310
279
 
311
280
  @keyword = keyword
312
281
  @content = content
313
282
  @api_key = api_key
314
283
  @blog_url = blog_url
284
+ @sleep_delay = sleep_delay
315
285
  #sleep(counts_delay)
316
286
 
317
287
 
@@ -692,7 +662,12 @@ class Naver
692
662
  wait.until { @driver.find_element(:xpath, '//*[@id="mainFrame"]') } # 아이프레임 선택
693
663
  sleep(1)
694
664
  @driver.switch_to.frame(@driver.find_element(:xpath, '//*[@id="mainFrame"]')) # 아이프레임 선택
695
- sleep(1)
665
+ sleep(1)
666
+ puts "게시글 읽는 모션 진행".yellow
667
+ @driver.action.send_keys(:page_down).perform #스크롤 내리기
668
+ sleep(1)
669
+ @driver.action.send_keys(:page_down).perform #스크롤 내리기
670
+ sleep(1)
696
671
 
697
672
  if option['이웃추가'] == 'true'
698
673
  begin
@@ -1081,6 +1056,36 @@ class Naver
1081
1056
  else
1082
1057
  end
1083
1058
 
1059
+ content_soon = 0
1060
+ # 💬 content 설정 (여기 추가!)
1061
+ if @data['내용설정']['내용'].nil? || @data['내용설정']['내용'].empty?
1062
+ content = ''
1063
+ else
1064
+ if @data.dig('내용설정', '랜덤사용')&.respond_to?(:checked?) && @data['내용설정']['랜덤사용'].checked?
1065
+ content = @data['내용설정']['내용'].sample[2] # 랜덤 사용 시
1066
+ else
1067
+ content = @data['내용설정']['내용'][content_soon][2] # 순차적으로 사용
1068
+ content_soon += 1
1069
+ if content_soon >= @data['내용설정']['내용'].length
1070
+ content_soon = 0
1071
+ end
1072
+ end
1073
+ end
1074
+
1075
+ # 디엠 자동 변경이 체크된 경우 content를 변환
1076
+ if @data['포스트설정']['내용자동변경'].checked?
1077
+ change_memory = {}
1078
+ @data['포스트설정']['내용자동변경값'].each do |key, v|
1079
+ change_memory[key] = v.sample
1080
+ end
1081
+ @data['포스트설정']['내용자동변경값'].each do |key, _|
1082
+ if content.include?(key)
1083
+ content = content.gsub(key, change_memory[key]) # gsub을 사용하여 내용 치환
1084
+ else
1085
+ end
1086
+ end
1087
+ end
1088
+
1084
1089
  begin #댓글 작업 >> 시작
1085
1090
  # 댓글 쓰기 버튼 클릭
1086
1091
  begin
@@ -1384,6 +1389,18 @@ class Naver
1384
1389
  puts '-[√] 로그 파일 생성 완료.......'.yellow
1385
1390
  end
1386
1391
  end
1392
+
1393
+ def sleep_with_progress(sleep_delay)
1394
+ print "[설정 딜레이 진행 중] "
1395
+ steps = (sleep_delay.to_f / 0.5).to_i
1396
+ steps.times do
1397
+ print "."
1398
+ STDOUT.flush
1399
+ sleep(1)
1400
+ end
1401
+ puts "\n"
1402
+ end
1403
+ sleep_with_progress(sleep_delay)
1387
1404
 
1388
1405
  rescue
1389
1406
 
@@ -1667,7 +1684,7 @@ end
1667
1684
  proxy = table[3].to_s
1668
1685
  user_id = table[1].to_s
1669
1686
  user_pw = table[2].to_s
1670
- naver = Naver.new
1687
+ naver = Naver.new(@data)
1671
1688
  @data['table'][index][-1] = 30
1672
1689
  @data['table'] << []
1673
1690
  @data['table'].pop
@@ -1853,9 +1870,9 @@ end
1853
1870
 
1854
1871
  # 댓글 설정 수 카운트
1855
1872
  counts_number = @data['table'][index][6].to_i
1856
- counts_delay = @data['table'][index][5].to_i
1873
+ sleep_delay = @data['table'][index][5].to_i
1857
1874
  api_key = @data['포스트설정']['api_key'].text.to_s.force_encoding('utf-8')
1858
- naver.update(content,image,option,counts_number,keyword,blog_url,api_key,counts_delay)
1875
+ naver.update(content,image,option,counts_number,keyword,blog_url,api_key,sleep_delay)
1859
1876
 
1860
1877
 
1861
1878
 
@@ -1864,7 +1881,7 @@ end
1864
1881
  @data['table'][index][-1] = 100
1865
1882
  @data['table'] << []
1866
1883
  @data['table'].pop
1867
- sleep(@data['table'][index][5].to_i)
1884
+ #sleep(@data['table'][index][5].to_i)
1868
1885
  end
1869
1886
  rescue => exception
1870
1887
  puts exception
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zon_blog_comment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.39
4
+ version: 0.0.53
5
5
  platform: ruby
6
6
  authors:
7
7
  - zon
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-05-29 00:00:00.000000000 Z
10
+ date: 2025-06-12 00:00:00.000000000 Z
11
11
  dependencies: []
12
12
  description: File to Clipboard gem
13
13
  email: mymin26@naver.com