posting_duo 3.102.999 → 3.105.999

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/posting_duo.rb +264 -129
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2c19292517569a61f84a094753f72e65933388db458972fa027ffc4938fd1bc5
4
- data.tar.gz: bfcb7d95f6a9fbc858305ecb4f4b56bbdd4229a75c1273d669cc8f88f0caa8da
3
+ metadata.gz: ad0f09f029c46e29f802abaef8692c963f884c1c9b6c70e0f128e841d7011ffa
4
+ data.tar.gz: 2d2312ad852253cfd73dead18415403c3d6425222b38f1d553222de3616fa55c
5
5
  SHA512:
6
- metadata.gz: 2b1cfd80c03d0d343da034916329ea91aceed2f43e9c483f32bcbe59f9679b30d612e336bf5c42e6f2bc1581754973fd9f9ad74623ada2bf8004af072f16fd7e
7
- data.tar.gz: 2362dc80236f4f7f0e729e9513718add293c80b53ed902b2ad3bc8dad988f5c7095aac1691bfb6b37b648e51c41720c4bc4d96144842c4ab9efe340186ede5d1
6
+ metadata.gz: 97a0d7e7b3ab922b267d6fd17105b9642266af4e0f17e2278e54ee4b3b2893938682efe251dd633ba3288fb0a91d52f65692c49602be22d0ccffde6040289832
7
+ data.tar.gz: 7f0620e0663222bfa1fcade21413436b44fe47486bc9ef572aac4193c89f155c027637dd306586245695101e11e7c63722ddb32caee61eb513fa82e495314d45
data/lib/posting_duo.rb CHANGED
@@ -25,34 +25,38 @@ include AutoClickMethods
25
25
  using Rainbow
26
26
 
27
27
 
28
-
29
-
30
- class Naver
31
- def initialize
32
- kill_selenium_chrome #기존 모두 닫는 명령
33
- sleep(1)
34
- end
35
-
36
-
37
- def kill_selenium_chrome #기존 창 모두 닫는 코드
38
- wmi = WIN32OLE.connect("winmgmts://")
39
- chrome_procs = wmi.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'chrome.exe'")
40
-
41
- chrome_procs.each do |proc|
28
+ class ChromeKiller
29
+ def self.kill_selenium_chrome
30
+ begin
31
+ wmi = WIN32OLE.connect("winmgmts://")
32
+ chrome_procs = wmi.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'chrome.exe'")
33
+ chrome_procs.each do |proc|
42
34
  cmd = proc.CommandLine
43
35
  if cmd && cmd.include?("user-data-dir=C:/board_cookie")
44
- puts "→ 크롬 창 초기화: PID #{proc.ProcessId}"
45
- begin
36
+ puts "→ 크롬 창 초기화: PID #{proc.ProcessId}"
37
+ begin
46
38
  proc.Terminate
47
- rescue
48
- #puts "→ 이미 종료된 프로세스: #{proc.ProcessId}"
49
- end
50
- end
39
+ rescue
40
+ # 무시
41
+ end
51
42
  end
52
- sleep(1)
53
-
54
- end
43
+ end
44
+ sleep(1)
45
+ rescue => e
46
+ puts "Chrome 종료 시도 중 오류 발생: #{e.message}"
47
+ end
48
+ end
49
+ end
55
50
 
51
+ class Naver
52
+ def initialize
53
+ begin
54
+ ChromeKiller.kill_selenium_chrome
55
+ sleep(1)
56
+ rescue => e
57
+ puts "크롬 창 초기화 시도 중 오류 발생: #{e.message} (무시하고 진행)"
58
+ end
59
+ end
56
60
 
57
61
 
58
62
  def chrome_setup(proxy, board_cookie_dir = "C:/board_cookie")
@@ -7036,63 +7040,43 @@ begin
7036
7040
  sleep(1)
7037
7041
  rescue
7038
7042
  begin
7039
- @driver.find_element(:xpath, '//*[@id="wr_5"]').send_keys(more_txt1)
7043
+ @driver.find_element(:xpath, '//*[@name="wr_10"]').send_keys(more_txt1)
7040
7044
  sleep(1)
7041
7045
  rescue
7042
7046
  begin
7043
- @driver.find_element(:xpath, '//*[@name="wr_5"]').send_keys(more_txt1)
7047
+ @driver.find_element(:xpath, '//*[@name="wr_link1"]').send_keys(more_txt1)
7044
7048
  sleep(1)
7045
7049
  rescue
7046
7050
  begin
7047
- @driver.find_element(:xpath, '//*[@name="wr_10"]').send_keys(more_txt1)
7048
- sleep(1)
7051
+ @driver.find_element(:xpath, '//*[@id="wr_link1"]').send_keys(more_txt1)
7052
+ sleep(1)
7049
7053
  rescue
7050
7054
  begin
7051
- @driver.find_element(:xpath, '//*[@name="wr_link1"]').send_keys(more_txt1)
7052
- sleep(1)
7055
+ @driver.find_element(:xpath, '//input[@name="email" and @type="text"]').send_keys(more_txt1)
7056
+ sleep(1)
7053
7057
  rescue
7054
7058
  begin
7055
- @driver.find_element(:xpath, '//*[@id="wr_link1"]').send_keys(more_txt1)
7056
- sleep(1)
7059
+ @driver.find_element(:xpath, '//*[@name="b_mail"]').send_keys(more_txt1)
7060
+ sleep(1)
7057
7061
  rescue
7058
7062
  begin
7059
- @driver.find_element(:xpath, '//input[@name="email" and @type="text"]').send_keys(more_txt1)
7060
- sleep(1)
7063
+ @driver.find_element(:xpath, '//*[@name="board_email"]').send_keys(more_txt1)
7064
+ sleep(1)
7061
7065
  rescue
7062
7066
  begin
7063
- @driver.find_element(:xpath, '//*[@name="b_mail"]').send_keys(more_txt1)
7064
- sleep(1)
7067
+ @driver.find_element(:xpath, '//*[@type="url" and @class="homepage rx_ev_url"]').send_keys(more_txt1)
7068
+ sleep(1)
7065
7069
  rescue
7066
- begin
7067
- @driver.find_element(:xpath, '//*[@name="board_email"]').send_keys(more_txt1)
7068
- sleep(1)
7069
- rescue
7070
- begin
7071
- @driver.find_element(:xpath, '//*[@type="url" and @class="homepage rx_ev_url"]').send_keys(more_txt1)
7072
- sleep(1)
7073
- rescue
7074
-
7075
-
7076
- end
7077
-
7078
- end
7079
-
7080
7070
  end
7081
-
7082
7071
  end
7083
7072
  end
7084
-
7085
7073
  end
7086
-
7087
7074
  end
7088
-
7089
7075
  end
7090
-
7091
7076
  end
7092
-
7093
7077
  end
7094
-
7095
7078
  end
7079
+
7096
7080
  ##<─────────────────────────────────────────────────────────────기타 입력 부분 탐색 1차 코드 부분
7097
7081
 
7098
7082
  ##기타 입력 부분 탐색 2차 코드 부분─────────────────────────────────────────────────────────────>
@@ -7165,10 +7149,10 @@ begin
7165
7149
  begin
7166
7150
  @driver.find_element(:xpath, '//*[@name="wr_12"]').send_keys(more_txt1)
7167
7151
  sleep(1)
7168
- rescue
7152
+ rescue
7169
7153
 
7170
7154
 
7171
- end
7155
+ end
7172
7156
 
7173
7157
  end
7174
7158
 
@@ -7201,10 +7185,10 @@ begin
7201
7185
  begin
7202
7186
  @driver.find_element(:xpath, '//*[@name="wr_13"]').send_keys(more_txt1)
7203
7187
  sleep(1)
7204
- rescue
7188
+ rescue
7205
7189
 
7206
7190
 
7207
- end
7191
+ end
7208
7192
 
7209
7193
  end
7210
7194
 
@@ -7237,10 +7221,10 @@ begin
7237
7221
  begin
7238
7222
  @driver.find_element(:xpath, '//*[@name="wr_14"]').send_keys(more_txt1)
7239
7223
  sleep(1)
7240
- rescue
7224
+ rescue
7241
7225
 
7242
7226
 
7243
- end
7227
+ end
7244
7228
 
7245
7229
  end
7246
7230
 
@@ -7250,6 +7234,18 @@ begin
7250
7234
 
7251
7235
  end
7252
7236
  ##<─────────────────────────────────────────────────────────────기타 입력 부분 탐색 4차 코드 부분
7237
+ ##기타 입력 부분 탐색 4차 코드 부분─────────────────────────────────────────────────────────────>
7238
+ begin
7239
+ @driver.find_element(:xpath, '//*[@id="wr_5"]').send_keys(more_txt2)
7240
+ sleep(1)
7241
+ rescue
7242
+ begin
7243
+ @driver.find_element(:xpath, '//*[@name="wr_5"]').send_keys(more_txt2)
7244
+ sleep(1)
7245
+ rescue
7246
+ end
7247
+ end
7248
+ ##<─────────────────────────────────────────────────────────────기타 입력 부분 탐색 4차 코드 부분
7253
7249
 
7254
7250
 
7255
7251
 
@@ -7356,7 +7352,7 @@ begin
7356
7352
  ##<─────────────────────────────────────────────────────────────────────카테고리 선택 코드 부분
7357
7353
 
7358
7354
 
7359
- begin
7355
+ begin
7360
7356
  check = @driver.find_element(:xpath, '//*[@type="checkbox" and @name="privacy" and @value="Y" and @checked=""]')
7361
7357
  @driver.execute_script("arguments[0].scrollIntoView({block: 'center', inline: 'center'})", check)
7362
7358
  sleep(1)
@@ -7465,7 +7461,14 @@ begin
7465
7461
  @driver.execute_script("arguments[0].click();", check)
7466
7462
 
7467
7463
  rescue
7468
-
7464
+ begin
7465
+ check = @driver.find_element(:xpath, '//*[@type="checkbox" and @name="fagree" and @name="fagree"]')
7466
+ @driver.execute_script("arguments[0].scrollIntoView({block: 'center', inline: 'center'})", check)
7467
+ sleep(1)
7468
+ @driver.find_element(:xpath, '//*[@type="checkbox" and @name="fagree" and @name="fagree"]').click
7469
+ sleep(1)
7470
+ rescue
7471
+ end
7469
7472
  end
7470
7473
  end
7471
7474
  end
@@ -7512,200 +7515,271 @@ begin
7512
7515
  title = title.strip
7513
7516
  ##제목 입력 코드 부분─────────────────────────────────────────────────────────────────────>
7514
7517
  #puts '-[√] 제목 입력 필드 탐색 시작.......'.yellow
7515
-
7518
+ target_element = nil
7516
7519
  begin
7517
- @driver.find_element(:xpath, '//*[@id="wr_subject"]').click
7520
+ target_element = @driver.find_element(:xpath, '//*[@id="wr_subject"]')
7521
+ target_element.click
7518
7522
  sleep(1)
7519
- @driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys(title)
7523
+ target_element.send_keys(title)
7520
7524
  puts '-[√] 제목 code 1.......'.yellow
7521
7525
  rescue
7522
7526
  begin
7523
- @driver.find_element(:xpath, '//*[@fw-label="제목"]').click
7527
+ target_element = @driver.find_element(:xpath, '//*[@fw-label="제목"]')
7528
+ target_element.click
7524
7529
  sleep(1)
7525
- @driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys(title)
7530
+ target_element.send_keys(title)
7526
7531
  puts '-[√] 제목 code 2.......'.yellow
7527
7532
  rescue
7528
7533
  begin
7529
- @driver.find_element(:xpath, '//*[@name="subject"]').click
7534
+ target_element = @driver.find_element(:xpath, '//*[@name="subject"]')
7535
+ target_element.click
7530
7536
  sleep(1)
7531
- @driver.find_element(:xpath, '//*[@name="subject"]').send_keys(title)
7537
+ target_element.send_keys(title)
7532
7538
  puts '-[√] 제목 code 3.......'.yellow
7533
7539
  rescue
7534
7540
  begin
7535
- @driver.find_element(:xpath, '//*[@name="title"]').click
7541
+ target_element = @driver.find_element(:xpath, '//*[@name="title"]')
7542
+ target_element.click
7536
7543
  sleep(1)
7537
- @driver.find_element(:xpath, '//*[@name="title"]').send_keys(title)
7544
+ target_element.send_keys(title)
7538
7545
  puts '-[√] 제목 code 4.......'.yellow
7539
7546
  rescue
7540
7547
  begin
7541
- @driver.find_element(:xpath, '//*[@id="wr_title"]').click
7548
+ target_element = @driver.find_element(:xpath, '//*[@id="wr_title"]')
7549
+ target_element.click
7542
7550
  sleep(1)
7543
- @driver.find_element(:xpath, '//*[@id="wr_title"]').send_keys(title)
7551
+ target_element.send_keys(title)
7544
7552
  puts '-[√] 제목 code 5.......'.yellow
7545
7553
  rescue
7546
7554
  begin
7547
- @driver.find_element(:xpath, '//*[@id="title"]').click
7555
+ target_element = @driver.find_element(:xpath, '//*[@id="title"]')
7556
+ target_element.click
7548
7557
  sleep(1)
7549
- @driver.find_element(:xpath, '//*[@id="title"]').send_keys(title)
7558
+ target_element.send_keys(title)
7550
7559
  puts '-[√] 제목 code 6.......'.yellow
7551
7560
  rescue
7552
7561
  begin
7553
- @driver.find_element(:xpath, '//*[@id="postTitle"]').click
7562
+ target_element = @driver.find_element(:xpath, '//*[@id="postTitle"]')
7563
+ target_element.click
7554
7564
  sleep(1)
7555
- @driver.find_element(:xpath, '//*[@id="postTitle"]').send_keys(title)
7565
+ target_element.send_keys(title)
7556
7566
  puts '-[√] 제목 code 7.......'.yellow
7557
7567
  rescue
7558
7568
  begin
7559
- @driver.find_element(:xpath, '//*[@title="input"]').click
7569
+ target_element = @driver.find_element(:xpath, '//*[@title="input"]')
7570
+ target_element.click
7560
7571
  sleep(1)
7561
- @driver.find_element(:xpath, '//*[@title="input"]').send_keys(title)
7572
+ target_element.send_keys(title)
7562
7573
  puts '-[√] 제목 code 8.......'.yellow
7563
7574
  rescue
7564
7575
  begin
7565
- @driver.find_element(:xpath, '//*[@name="wr_subject"]').click
7576
+ target_element = @driver.find_element(:xpath, '//*[@name="wr_subject"]')
7577
+ target_element.click
7566
7578
  sleep(1)
7567
- @driver.find_element(:xpath, '//*[@name="wr_subject"]').send_keys(title)
7579
+ target_element.send_keys(title)
7568
7580
  puts '-[√] 제목 code 9.......'.yellow
7569
7581
  rescue
7570
7582
  begin
7571
- @driver.find_element(:xpath, '//*[@name="post_title"]').click
7583
+ target_element = @driver.find_element(:xpath, '//*[@name="post_title"]')
7584
+ target_element.click
7572
7585
  sleep(1)
7573
- @driver.find_element(:xpath, '//*[@name="post_title"]').send_keys(title)
7586
+ target_element.send_keys(title)
7574
7587
  puts '-[√] 제목 code 11.......'.yellow
7575
7588
  rescue
7576
7589
  begin
7577
- @driver.find_element(:xpath, '//*[@title="제목"]').click
7590
+ target_element = @driver.find_element(:xpath, '//*[@title="제목"]')
7591
+ target_element.click
7578
7592
  sleep(1)
7579
- @driver.find_element(:xpath, '//*[@title="제목"]').send_keys(title)
7593
+ target_element.send_keys(title)
7580
7594
  puts '-[√] 제목 code 12.......'.yellow
7581
7595
  rescue
7582
7596
  begin
7583
- @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').click
7597
+ target_element = @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]')
7598
+ target_element.click
7584
7599
  sleep(1)
7585
- @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').send_keys(title)
7600
+ target_element.send_keys(title)
7586
7601
  puts '-[√] 제목 code 13.......'.yellow
7587
7602
  rescue
7588
7603
  begin
7589
- @driver.find_element(:xpath, '//*[@placeholder="제목"]').click
7604
+ target_element = @driver.find_element(:xpath, '//*[@placeholder="제목"]')
7605
+ target_element.click
7590
7606
  sleep(1)
7591
- @driver.find_element(:xpath, '//*[@placeholder="제목"]').send_keys(title)
7607
+ target_element.send_keys(title)
7592
7608
  puts '-[√] 제목 code 14.......'.yellow
7593
7609
  rescue
7594
7610
  begin
7595
- @driver.find_element(:xpath, '//*[@hname="제목"]').click
7611
+ target_element = @driver.find_element(:xpath, '//*[@hname="제목"]')
7612
+ target_element.click
7596
7613
  sleep(1)
7597
- @driver.find_element(:xpath, '//*[@hname="제목"]').send_keys(title)
7614
+ target_element.send_keys(title)
7598
7615
  puts '-[√] 제목 code 15.......'.yellow
7599
7616
  rescue
7600
7617
  begin
7601
- @driver.find_element(:xpath, '//*[@id="post_subject"]').click
7618
+ target_element = @driver.find_element(:xpath, '//*[@id="post_subject"]')
7619
+ target_element.click
7602
7620
  sleep(1)
7603
- @driver.find_element(:xpath, '//*[@id="post_subject"]').send_keys(title)
7621
+ target_element.send_keys(title)
7604
7622
  puts '-[√] 제목 code 16.......'.yellow
7605
7623
  rescue
7606
7624
  begin
7607
- @driver.find_element(:xpath, '//*[@id="search_bar"]').click
7625
+ target_element = @driver.find_element(:xpath, '//*[@id="search_bar"]')
7626
+ target_element.click
7608
7627
  sleep(1)
7609
- @driver.find_element(:xpath, '//*[@id="search_bar"]').send_keys(title)
7628
+ target_element.send_keys(title)
7610
7629
  puts '-[√] 제목 code 17.......'.yellow
7611
7630
  rescue
7612
7631
  begin
7613
- @driver.find_element(:xpath, '//*[@for="wr_subject"]').click
7632
+ target_element = @driver.find_element(:xpath, '//*[@for="wr_subject"]')
7633
+ target_element.click
7614
7634
  sleep(1)
7615
- @driver.find_element(:xpath, '//*[@for="wr_subject"]').send_keys(title)
7635
+ target_element.send_keys(title)
7616
7636
  puts '-[√] 제목 code 18.......'.yellow
7617
7637
 
7618
7638
  rescue
7619
7639
  ########################################################2차@#######################################
7620
7640
  begin
7621
7641
 
7622
- @driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys(title)
7642
+ target_element = @driver.find_element(:xpath, '//*[@id="wr_subject"]')
7643
+ target_element.click
7644
+ sleep(1)
7645
+ target_element.send_keys(title)
7623
7646
  puts '-[√] 제목 code 19.......'.yellow
7624
7647
  rescue
7625
7648
  begin
7626
7649
 
7627
- @driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys(title)
7650
+ target_element = @driver.find_element(:xpath, '//*[@fw-label="제목"]')
7651
+ target_element.click
7652
+ sleep(1)
7653
+ target_element.send_keys(title)
7628
7654
  puts '-[√] 제목 code 20.......'.yellow
7629
7655
  rescue
7630
7656
  begin
7631
7657
 
7632
- @driver.find_element(:xpath, '//*[@name="subject"]').send_keys(title)
7658
+ target_element = @driver.find_element(:xpath, '//*[@name="subject"]')
7659
+ target_element.click
7660
+ sleep(1)
7661
+ target_element.send_keys(title)
7633
7662
  puts '-[√] 제목 code 21.......'.yellow
7634
7663
  rescue
7635
7664
  begin
7636
7665
 
7637
- @driver.find_element(:xpath, '//*[@name="title"]').send_keys(title)
7666
+ target_element = @driver.find_element(:xpath, '//*[@name="title"]')
7667
+ target_element.click
7668
+ sleep(1)
7669
+ target_element.send_keys(title)
7638
7670
  puts '-[√] 제목 code 22.......'.yellow
7639
7671
  rescue
7640
7672
  begin
7641
7673
 
7642
- @driver.find_element(:xpath, '//*[@id="wr_title"]').send_keys(title)
7674
+ target_element = @driver.find_element(:xpath, '//*[@id="wr_title"]')
7675
+ target_element.click
7676
+ sleep(1)
7677
+ target_element.send_keys(title)
7643
7678
  puts '-[√] 제목 code 23.......'.yellow
7644
7679
  rescue
7645
7680
  begin
7646
7681
 
7647
- @driver.find_element(:xpath, '//*[@id="title"]').send_keys(title)
7682
+ target_element = @driver.find_element(:xpath, '//*[@id="title"]')
7683
+ target_element.click
7684
+ sleep(1)
7685
+ target_element.send_keys(title)
7648
7686
  puts '-[√] 제목 code 24.......'.yellow
7649
7687
  rescue
7650
7688
  begin
7651
7689
 
7652
- @driver.find_element(:xpath, '//*[@id="postTitle"]').send_keys(title)
7690
+ target_element = @driver.find_element(:xpath, '//*[@id="postTitle"]')
7691
+ target_element.click
7692
+ sleep(1)
7693
+ target_element.send_keys(title)
7653
7694
  puts '-[√] 제목 code 25.......'.yellow
7654
7695
  rescue
7655
7696
  begin
7656
7697
 
7657
- @driver.find_element(:xpath, '//*[@title="input"]').send_keys(title)
7698
+ target_element = @driver.find_element(:xpath, '//*[@title="input"]')
7699
+ target_element.click
7700
+ sleep(1)
7701
+ target_element.send_keys(title)
7658
7702
  puts '-[√] 제목 code 26.......'.yellow
7659
7703
  rescue
7660
7704
  begin
7661
7705
 
7662
- @driver.find_element(:xpath, '//*[@name="wr_subject"]').send_keys(title)
7706
+ target_element = @driver.find_element(:xpath, '//*[@name="wr_subject"]')
7707
+ target_element.click
7708
+ sleep(1)
7709
+ target_element.send_keys(title)
7663
7710
  puts '-[√] 제목 code 27.......'.yellow
7664
7711
  rescue
7665
7712
  begin
7666
7713
 
7667
- @driver.find_element(:xpath, '//*[@name="post_title"]').send_keys(title)
7714
+ target_element = @driver.find_element(:xpath, '//*[@name="post_title"]')
7715
+ target_element.click
7716
+ sleep(1)
7717
+ target_element.send_keys(title)
7668
7718
  puts '-[√] 제목 code 28.......'.yellow
7669
7719
  rescue
7670
7720
  begin
7671
7721
 
7672
- @driver.find_element(:xpath, '//*[@title="제목"]').send_keys(title)
7722
+ target_element = @driver.find_element(:xpath, '//*[@title="제목"]')
7723
+ target_element.click
7724
+ sleep(1)
7725
+ target_element.send_keys(title)
7673
7726
  puts '-[√] 제목 code 29.......'.yellow
7674
7727
  rescue
7675
7728
  begin
7676
7729
 
7677
- @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').send_keys(title)
7730
+ target_element = @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]')
7731
+ target_element.click
7732
+ sleep(1)
7733
+ target_element.send_keys(title)
7678
7734
  puts '-[√] 제목 code 30.......'.yellow
7679
7735
  rescue
7680
7736
  begin
7681
7737
 
7682
- @driver.find_element(:xpath, '//*[@placeholder="제목"]').send_keys(title)
7738
+ target_element = @driver.find_element(:xpath, '//*[@placeholder="제목"]')
7739
+ target_element.click
7740
+ sleep(1)
7741
+ target_element.send_keys(title)
7683
7742
  puts '-[√] 제목 code 31.......'.yellow
7684
7743
  rescue
7685
7744
  begin
7686
7745
 
7687
- @driver.find_element(:xpath, '//*[@hname="제목"]').send_keys(title)
7746
+ target_element = @driver.find_element(:xpath, '//*[@hname="제목"]')
7747
+ target_element.click
7748
+ sleep(1)
7749
+ target_element.send_keys(title)
7688
7750
  puts '-[√] 제목 code 32.......'.yellow
7689
7751
  rescue
7690
7752
  begin
7691
7753
 
7692
- @driver.find_element(:xpath, '//*[@id="post_subject"]').send_keys(title)
7754
+ target_element = @driver.find_element(:xpath, '//*[@id="post_subject"]')
7755
+ target_element.click
7756
+ sleep(1)
7757
+ target_element.send_keys(title)
7693
7758
  puts '-[√] 제목 code 33.......'.yellow
7694
7759
  rescue
7695
7760
  begin
7696
7761
 
7697
- @driver.find_element(:xpath, '//*[@id="search_bar"]').send_keys(title)
7762
+ target_element = @driver.find_element(:xpath, '//*[@id="search_bar"]')
7763
+ target_element.click
7764
+ sleep(1)
7765
+ target_element.send_keys(title)
7698
7766
  puts '-[√] 제목 code 34.......'.yellow
7699
7767
  rescue
7700
7768
  begin
7701
7769
 
7702
- @driver.find_element(:xpath, '//*[@for="wr_subject"]').send_keys(title)
7770
+ target_element = @driver.find_element(:xpath, '//*[@for="wr_subject"]')
7771
+ target_element.click
7772
+ sleep(1)
7773
+ target_element.send_keys(title)
7703
7774
  puts '-[√] 제목 code 35.......'.yellow
7704
7775
 
7705
7776
  rescue
7706
7777
  begin
7707
7778
 
7708
- @driver.find_element(:xpath, '//*[@name="SUBJECT"]').send_keys(title)
7779
+ target_element = @driver.find_element(:xpath, '//*[@name="SUBJECT"]')
7780
+ target_element.click
7781
+ sleep(1)
7782
+ target_element.send_keys(title)
7709
7783
  sleep(1)
7710
7784
  @driver.action.key_down(:tab).key_up(:tab).perform #x탭
7711
7785
  puts '-[√] 제목 code 36.......'.yellow
@@ -7713,7 +7787,10 @@ puts '-[√] 제목 code 36.......'.yellow
7713
7787
  rescue
7714
7788
  begin
7715
7789
 
7716
- @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요."]').send_keys(title)
7790
+ target_element = @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요."]')
7791
+ target_element.click
7792
+ sleep(1)
7793
+ target_element.send_keys(title)
7717
7794
  sleep(1)
7718
7795
  puts '-[√] 제목 code 37.......'.yellow
7719
7796
 
@@ -7723,55 +7800,85 @@ puts '-[√] 제목 code 37.......'.yellow
7723
7800
  rescue
7724
7801
  begin
7725
7802
 
7726
- @driver.find_element(:xpath, '//*[@id="sj"]').send_keys(title)
7803
+ target_element = @driver.find_element(:xpath, '//*[@id="sj"]')
7804
+ target_element.click
7805
+ sleep(1)
7806
+ target_element.send_keys(title)
7727
7807
  sleep(1)
7728
7808
  puts '-[√] 제목 code 38.......'.yellow
7729
7809
  rescue
7730
7810
  begin
7731
7811
 
7732
- @driver.find_element(:xpath, '//*[@class="i_text wid02"]').send_keys(title)
7812
+ target_element = @driver.find_element(:xpath, '//*[@class="i_text wid02"]')
7813
+ target_element.click
7814
+ sleep(1)
7815
+ target_element.send_keys(title)
7733
7816
  sleep(1)
7734
7817
  puts '-[√] 제목 code 39.......'.yellow
7735
7818
  rescue
7736
7819
  begin
7737
7820
 
7738
- @driver.find_element(:xpath, '//*[@name="rg_title"]').send_keys(title)
7821
+ target_element = @driver.find_element(:xpath, '//*[@name="rg_title"]')
7822
+ target_element.click
7823
+ sleep(1)
7824
+ target_element.send_keys(title)
7739
7825
  sleep(1)
7740
7826
  puts '-[√] 제목 code 40.......'.yellow
7741
7827
  rescue
7742
7828
  begin
7743
7829
 
7744
- @driver.find_element(:css, 'input[@name="title"]').send_keys(title)
7830
+ target_element = @driver.find_element(:css, 'input[@name="title"]')
7831
+ target_element.click
7832
+ sleep(1)
7833
+ target_element.send_keys(title)
7745
7834
  sleep(1)
7746
7835
  puts '-[√] 제목 code 41.......'.yellow
7747
7836
  rescue
7748
7837
  begin
7749
- @driver.find_element(:xpath, '//*[@id="fm_title"]').send_keys(title)
7838
+ target_element = @driver.find_element(:xpath, '//*[@id="fm_title"]')
7839
+ target_element.click
7840
+ sleep(1)
7841
+ target_element.send_keys(title)
7750
7842
  sleep(1)
7751
7843
  puts '-[√] 제목 code 42.......'.yellow
7752
7844
  rescue
7753
7845
  begin
7754
- @driver.find_element(:xpath, '//*[@id="mb_review_i_title"]').send_keys(title)
7846
+ target_element = @driver.find_element(:xpath, '//*[@id="mb_review_i_title"]')
7847
+ target_element.click
7848
+ sleep(1)
7849
+ target_element.send_keys(title)
7755
7850
  sleep(1)
7756
7851
  puts '-[√] 제목 code 43.......'.yellow
7757
7852
  rescue
7758
7853
  begin
7759
- @driver.find_element(:xpath, '//*[@name="b_subject"]').send_keys(title)
7854
+ target_element = @driver.find_element(:xpath, '//*[@name="b_subject"]')
7855
+ target_element.click
7856
+ sleep(1)
7857
+ target_element.send_keys(title)
7760
7858
  sleep(1)
7761
7859
  puts '-[√] 제목 code 44.......'.yellow
7762
7860
  rescue
7763
7861
  begin
7764
- @driver.find_element(:xpath, '//*[@name="board_subject"]').send_keys(title)
7862
+ target_element = @driver.find_element(:xpath, '//*[@name="board_subject"]')
7863
+ target_element.click
7864
+ sleep(1)
7865
+ target_element.send_keys(title)
7765
7866
  sleep(1)
7766
7867
  puts '-[√] 제목 code 45.......'.yellow
7767
7868
  rescue
7768
7869
  begin
7769
- @driver.find_element(:xpath, '//*[@name="tx_article_title"]').send_keys(title)
7870
+ target_element = @driver.find_element(:xpath, '//*[@name="tx_article_title"]')
7871
+ target_element.click
7872
+ sleep(1)
7873
+ target_element.send_keys(title)
7770
7874
  sleep(1)
7771
7875
  puts '-[√] 제목 code 46.......'.yellow
7772
7876
  rescue
7773
7877
  begin
7774
- @driver.find_element(:xpath, '//*[@id="csTitle"]').send_keys(title)
7878
+ target_element = @driver.find_element(:xpath, '//*[@id="csTitle"]')
7879
+ target_element.click
7880
+ sleep(1)
7881
+ target_element.send_keys(title)
7775
7882
  sleep(1)
7776
7883
  puts '-[√] 제목 code 47.......'.yellow
7777
7884
  rescue => e
@@ -8144,7 +8251,35 @@ end
8144
8251
  puts '-[√] HTML 코드 32 code.......'.yellow
8145
8252
  sleep(1)
8146
8253
  rescue
8147
-
8254
+ begin
8255
+ if target_element
8256
+ # 3. 제목 요소 바로 아래에 체크박스 HTML 삽입
8257
+ checkbox_html = <<~HTML
8258
+ <div class="custom-control custom-checkbox custom-control-inline">
8259
+ <input type="checkbox" name="html" value="html2" id="html" onclick="html_auto_br(this);" class="custom-control-input">
8260
+ <label class="custom-control-label" for="html"><span>HTML</span></label>
8261
+ </div>
8262
+ HTML
8263
+ @driver.execute_script("arguments[0].insertAdjacentHTML('afterend', arguments[1]);", target_element, checkbox_html)
8264
+ puts '체크박스 HTML 강제 적용.......'.green
8265
+ sleep(1)
8266
+
8267
+ # 4. 삽입한 체크박스 스크롤하여 화면 중앙으로 이동
8268
+ html_checkbox = @driver.find_element(:xpath, '//*[@type="checkbox" and @name="html"]')
8269
+ @driver.execute_script("arguments[0].scrollIntoView({block: 'center', inline: 'center'})", html_checkbox)
8270
+ sleep(1)
8271
+
8272
+ # 5. HTML 토글 버튼 클릭
8273
+ @driver.find_element(:xpath, '//*[@type="checkbox" and @name="html"]').click
8274
+ puts '-[√] 임의 추가 HTML 코드 01 code.......'.yellow
8275
+ sleep(1)
8276
+
8277
+ else
8278
+ puts "타겟 제목 요소가 없어서 체크박스 삽입 불가".red
8279
+ end
8280
+ rescue
8281
+
8282
+ end
8148
8283
  end
8149
8284
  end
8150
8285
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: posting_duo
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.102.999
4
+ version: 3.105.999
5
5
  platform: ruby
6
6
  authors:
7
7
  - zon
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-06-13 00:00:00.000000000 Z
10
+ date: 2025-06-17 00:00:00.000000000 Z
11
11
  dependencies: []
12
12
  description: File to Clipboard gem
13
13
  email: mymin26@naver.com