posting_zon 3.82.799 → 3.85.799

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_zon.rb +186 -170
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 43448e712da54c15e8765c9583a16794e1c0fdd45087e88e67b4882ff53beb25
4
- data.tar.gz: 8dd9b168d104ae180f3c9e76e050ea43c0aba630b3f9e535e0800066d2016cdd
3
+ metadata.gz: b4fe495450978a8eb94241dfa52a73eeffbf2f44b5692d62550797313b7a6c8a
4
+ data.tar.gz: 90c7cbe957a2588d862b9b6a778b56f9a10890f3193969bd789b2a4cb7ecc713
5
5
  SHA512:
6
- metadata.gz: e24218b90e37ce07433c96504b2d94709e777ec1ceb574bf40c270a962160476d40806afe173dbc5a99bfede4b4725f8b2dffcbf43a7494f3d93a85bf587a607
7
- data.tar.gz: 822d349d852f53dccad321a68a19b1529ac6dc97096e32c489cd70d8905b420ac00b85e044d8fcbd1cea583d900a18e04d3ee3f3ec258b1a2d2ab6fd615d49b3
6
+ metadata.gz: 8b6e6c32c5d8b427afd2fa26c72ad000f458d9752ab192bb2adcb7bc94ef24c2aed6ea0763b0e547dd228f506b78b852c9b9ccb7aa22edb718c3bfa6f7b96c87
7
+ data.tar.gz: 26e6502a09311603e870ef53993483c82f7dff6fbf979e21b8853b60aac826952f92d4ec7ed540edf4d915356351e3024b318cc0333bc103d57cfdbec527cefa
data/lib/posting_zon.rb CHANGED
@@ -15,7 +15,6 @@ require 'clipboard'
15
15
  require 'crack'
16
16
  require 'uri'
17
17
  require 'cgi'
18
- require 'digest'
19
18
  require 'auto_click'
20
19
  require 'rainbow/refinement'
21
20
  require 'watir'
@@ -4496,52 +4495,7 @@ post_url = option['post_url'].to_s
4496
4495
  end
4497
4496
  end
4498
4497
  rescue
4499
- begin
4500
- # 타임아웃을 3초로 설정
4501
- wait = Selenium::WebDriver::Wait.new(:timeout => 5)
4502
- # 요소가 나타날 때까지 30초 동안 기다립니다.
4503
- wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
4504
- sleep(1)
4505
- @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
4506
- puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
4507
- sleep(10)
4508
- begin
4509
- @driver.find_element(:xpath, '//*[@data-state="error"]').click
4510
- puts '-[√] 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
4511
- puts '-[√] 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
4512
- @driver.window_handles.each do |handle|
4513
- @driver.switch_to.window(handle)
4514
- begin
4515
- # 로딩 중이거나, 페이지가 완전히 로딩되지 않더라도 탭을 닫기
4516
- @driver.close
4517
- rescue Selenium::WebDriver::Error::WebDriverError => e
4518
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
4519
- end
4520
- end
4521
- return 0
4522
- @driver.quit
4523
- rescue
4524
- begin
4525
- # 타임아웃을 77초로 설정
4526
- wait = Selenium::WebDriver::Wait.new(:timeout => 150)
4527
- # 요소가 나타날 때까지 100초 동안 기다립니다.
4528
- wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
4529
- sleep(1)
4530
- @driver.find_element(:xpath, '//*[@data-state="solved"]').click
4531
- puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
4532
-
4533
- sleep(5)
4534
- rescue => e
4535
- puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
4536
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
4537
- puts e
4538
- @driver.close
4539
- return 0
4540
- end
4541
- end
4542
- rescue
4543
-
4544
- end
4498
+
4545
4499
  end
4546
4500
  end
4547
4501
  ##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
@@ -8309,6 +8263,24 @@ if check_captcha == 1
8309
8263
  rescue
8310
8264
 
8311
8265
  end
8266
+
8267
+ begin
8268
+ #2차 확인 버튼 있을시
8269
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다111111.......'.green
8270
+ button = @driver.find_element(:xpath, '//input[@type="button" and @id="captch_button" and @value="확인"]')
8271
+ @driver.execute_script("arguments[0].scrollIntoView({block: 'center', inline: 'center'})", button)
8272
+ sleep(2)
8273
+ @driver.execute_script("arguments[0].click();", button)
8274
+
8275
+ begin
8276
+ wait = Selenium::WebDriver::Wait.new(timeout: 3)
8277
+ wait.until { @driver.switch_to.alert }
8278
+ @driver.switch_to.alert.accept
8279
+ rescue
8280
+ end
8281
+ rescue
8282
+ end
8283
+
8312
8284
  else
8313
8285
  end
8314
8286
 
@@ -8671,7 +8643,29 @@ if check_captcha == 0
8671
8643
  puts '-[√] 캡챠 코드 타겟 완료1.......'.blue
8672
8644
  rescue
8673
8645
 
8674
-
8646
+ begin
8647
+ @driver.switch_to.default_content()
8648
+ el = @driver.find_element(:xpath, '//img[contains(@src, "/captcha/images/image.php")]')
8649
+ puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
8650
+ puts '-[√] 캡챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
8651
+ puts '-[√] 캡챠 코드 code 14.......'.red
8652
+ sleep(1)
8653
+ @driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center', inline: 'center'});", el) # 화면 가운데
8654
+ sleep(1)
8655
+ mouse_move_percentage(0.3,0.02)
8656
+ sleep(0.5)
8657
+ left_click
8658
+ sleep(1)
8659
+ @driver.switch_to.window(@driver.window_handle) #핸들 주입
8660
+ @driver.action.context_click(el).perform #우 클릭
8661
+ sleep(1)
8662
+ @driver.action.key_down(:shift).key_stroke('m').key_up(:shift).perform #단축키
8663
+ sleep(1)
8664
+ puts '-[√] 캡챠 코드 타겟 완료1.......'.blue
8665
+ rescue
8666
+
8667
+
8668
+ end
8675
8669
  end
8676
8670
  end
8677
8671
 
@@ -9493,7 +9487,6 @@ if check_captcha == 0
9493
9487
 
9494
9488
 
9495
9489
 
9496
-
9497
9490
  sleep(1)
9498
9491
  ##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
9499
9492
  begin
@@ -9514,22 +9507,22 @@ el_ready = @driver.find_element(:xpath, '//*[@data-state="ready"]')
9514
9507
  sleep(1)
9515
9508
 
9516
9509
  puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
9517
- begin
9518
- @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
9519
- rescue
9520
9510
  begin
9521
- @driver.find_element(:xpath, '//*[@class="captcha-solver-image"]').click #캡챠우회버튼
9511
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
9522
9512
  rescue
9523
9513
  begin
9524
- @driver.find_element(:xpath, '//*[@class="captcha-solver-info"]').click #캡챠우회버튼
9514
+ @driver.find_element(:xpath, '//*[@class="captcha-solver-image"]').click #캡챠우회버튼
9525
9515
  rescue
9526
9516
  begin
9527
- @driver.find_element(:xpath, '//*[@class="captcha-solver captcha-solver_inner"]').click #캡챠우회버튼
9517
+ @driver.find_element(:xpath, '//*[@class="captcha-solver-info"]').click #캡챠우회버튼
9528
9518
  rescue
9519
+ begin
9520
+ @driver.find_element(:xpath, '//*[@class="captcha-solver captcha-solver_inner"]').click #캡챠우회버튼
9521
+ rescue
9522
+ end
9529
9523
  end
9530
9524
  end
9531
9525
  end
9532
- end
9533
9526
 
9534
9527
 
9535
9528
  sleep(10)
@@ -9556,6 +9549,7 @@ sleep(10)
9556
9549
  sleep(1)
9557
9550
  @driver.find_element(:xpath, '//*[@data-state="solved"]').click
9558
9551
  puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
9552
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다111.......'.green
9559
9553
  sleep(5)
9560
9554
  begin
9561
9555
  @driver.find_element(:xpath, '//*[@name="user_captcha"]').click
@@ -9572,6 +9566,22 @@ sleep(10)
9572
9566
  sleep(1)
9573
9567
  @driver.action.key_down(:right).key_up(:right).perform
9574
9568
  rescue
9569
+ begin
9570
+ #2차 확인 버튼 있을시
9571
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다111111.......'.green
9572
+ button = @driver.find_element(:xpath, '//input[@type="button" and @id="captch_button" and @value="확인"]')
9573
+ @driver.execute_script("arguments[0].scrollIntoView({block: 'center', inline: 'center'})", button)
9574
+ sleep(2)
9575
+ @driver.execute_script("arguments[0].click();", button)
9576
+
9577
+ begin
9578
+ wait = Selenium::WebDriver::Wait.new(timeout: 3)
9579
+ wait.until { @driver.switch_to.alert }
9580
+ @driver.switch_to.alert.accept
9581
+ rescue
9582
+ end
9583
+ rescue
9584
+ end
9575
9585
  end
9576
9586
  end
9577
9587
  end
@@ -9583,6 +9593,12 @@ end
9583
9593
 
9584
9594
 
9585
9595
 
9596
+
9597
+
9598
+
9599
+
9600
+
9601
+
9586
9602
  else
9587
9603
  end
9588
9604
 
@@ -9994,210 +10010,221 @@ rescue
9994
10010
  sleep(5)
9995
10011
 
9996
10012
  rescue
9997
- ########─────────────────────────────▼▼▼▼▼▼▼ 등록버튼 2차 시도 ▼▼▼▼▼▼▼──────────────────────────────#######
9998
- begin
9999
- puts '-[] 등록 버튼 코드 탐색에 실패하였습니다.......'.magenta
10000
- puts '-[√] 다른 방법으로 등록을 시도 합니다.......'.magenta
10001
-
10002
- sleep(1)
10003
- @driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys()
10004
- sleep(1)
10005
- @driver.find_element(:xpath, '//*[@id="wr_subject"]').click
10006
- sleep(1)
10007
- @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10008
- puts '-[√] 등록을 시도하였습니다.......'.magenta
10009
- sleep(5)
10010
- rescue
10013
+ begin
10014
+ ss_button = @driver.find_element(:xpath, '//input[@type="button" and @value="전송"]')
10015
+ @driver.execute_script("arguments[0].scrollIntoView({block: 'center', inline: 'center'})", ss_button)
10016
+ sleep(1)
10017
+
10018
+ ss_button = @driver.find_element(:xpath, '//input[@type="button" and @value="전송"]').click
10019
+ puts '-[] 등록을 36번 코드로 시도하였습니다.......'.magenta
10020
+ sleep(5)
10021
+
10022
+ rescue
10023
+ ########─────────────────────────────▼▼▼▼▼▼▼ 등록버튼 2차 시도 ▼▼▼▼▼▼▼──────────────────────────────#######
10011
10024
  begin
10012
- @driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys()
10025
+ puts '-[] 등록 버튼 코드 탐색에 실패하였습니다.......'.magenta
10026
+ puts '-[√] 다른 방법으로 등록을 시도 합니다.......'.magenta
10027
+
10013
10028
  sleep(1)
10014
- @driver.find_element(:xpath, '//*[@fw-label="제목"]').click
10029
+ @driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys()
10030
+ sleep(1)
10031
+ @driver.find_element(:xpath, '//*[@id="wr_subject"]').click
10015
10032
  sleep(1)
10016
10033
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10017
10034
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10018
10035
  sleep(5)
10019
- rescue
10020
- begin
10021
- @driver.find_element(:xpath, '//*[@name="subject"]').send_keys()
10022
- sleep(1)
10023
- @driver.find_element(:xpath, '//*[@name="subject"]').click
10024
- sleep(1)
10025
- @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10026
- puts '-[√] 등록을 시도하였습니다.......'.magenta
10027
- sleep(5)
10028
10036
  rescue
10029
10037
  begin
10030
- @driver.find_element(:xpath, '//*[@name="title"]').send_keys()
10038
+ @driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys()
10031
10039
  sleep(1)
10032
- @driver.find_element(:xpath, '//*[@name="title"]').click
10040
+ @driver.find_element(:xpath, '//*[@fw-label="제목"]').click
10033
10041
  sleep(1)
10034
10042
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10035
10043
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10036
10044
  sleep(5)
10037
10045
  rescue
10038
10046
  begin
10039
- @driver.find_element(:xpath, '//*[@id="wr_title"]').send_keys()
10047
+ @driver.find_element(:xpath, '//*[@name="subject"]').send_keys()
10040
10048
  sleep(1)
10041
- @driver.find_element(:xpath, '//*[@id="wr_title"]').click
10049
+ @driver.find_element(:xpath, '//*[@name="subject"]').click
10042
10050
  sleep(1)
10043
10051
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10044
10052
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10045
10053
  sleep(5)
10046
10054
  rescue
10047
10055
  begin
10048
- @driver.find_element(:xpath, '//*[@id="title"]').send_keys()
10056
+ @driver.find_element(:xpath, '//*[@name="title"]').send_keys()
10049
10057
  sleep(1)
10050
- @driver.find_element(:xpath, '//*[@id="title"]').click
10058
+ @driver.find_element(:xpath, '//*[@name="title"]').click
10051
10059
  sleep(1)
10052
10060
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10053
10061
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10054
10062
  sleep(5)
10055
10063
  rescue
10056
10064
  begin
10057
- @driver.find_element(:xpath, '//*[@id="postTitle"]').send_keys()
10065
+ @driver.find_element(:xpath, '//*[@id="wr_title"]').send_keys()
10058
10066
  sleep(1)
10059
- @driver.find_element(:xpath, '//*[@id="postTitle"]').click
10067
+ @driver.find_element(:xpath, '//*[@id="wr_title"]').click
10060
10068
  sleep(1)
10061
10069
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10062
10070
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10063
10071
  sleep(5)
10064
10072
  rescue
10065
10073
  begin
10066
- @driver.find_element(:xpath, '//*[@title="input"]').send_keys()
10074
+ @driver.find_element(:xpath, '//*[@id="title"]').send_keys()
10067
10075
  sleep(1)
10068
- @driver.find_element(:xpath, '//*[@title="input"]').click
10076
+ @driver.find_element(:xpath, '//*[@id="title"]').click
10069
10077
  sleep(1)
10070
10078
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10071
10079
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10072
10080
  sleep(5)
10073
10081
  rescue
10074
10082
  begin
10075
- @driver.find_element(:xpath, '//*[@name="wr_subject"]').send_keys()
10083
+ @driver.find_element(:xpath, '//*[@id="postTitle"]').send_keys()
10076
10084
  sleep(1)
10077
- @driver.find_element(:xpath, '//*[@name="wr_subject"]').click
10085
+ @driver.find_element(:xpath, '//*[@id="postTitle"]').click
10078
10086
  sleep(1)
10079
10087
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10080
10088
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10081
10089
  sleep(5)
10082
10090
  rescue
10083
10091
  begin
10084
- @driver.find_element(:xpath, '//*[@name="post_title"]').send_keys()
10092
+ @driver.find_element(:xpath, '//*[@title="input"]').send_keys()
10085
10093
  sleep(1)
10086
- @driver.find_element(:xpath, '//*[@name="post_title"]').click
10094
+ @driver.find_element(:xpath, '//*[@title="input"]').click
10087
10095
  sleep(1)
10088
10096
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10089
10097
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10090
10098
  sleep(5)
10091
10099
  rescue
10092
10100
  begin
10093
- @driver.find_element(:xpath, '//*[@title="제목"]').send_keys()
10101
+ @driver.find_element(:xpath, '//*[@name="wr_subject"]').send_keys()
10094
10102
  sleep(1)
10095
- @driver.find_element(:xpath, '//*[@title="제목"]').click
10103
+ @driver.find_element(:xpath, '//*[@name="wr_subject"]').click
10096
10104
  sleep(1)
10097
10105
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10098
10106
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10099
10107
  sleep(5)
10100
10108
  rescue
10101
10109
  begin
10102
- @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').send_keys()
10110
+ @driver.find_element(:xpath, '//*[@name="post_title"]').send_keys()
10103
10111
  sleep(1)
10104
- @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').click
10112
+ @driver.find_element(:xpath, '//*[@name="post_title"]').click
10105
10113
  sleep(1)
10106
10114
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10107
10115
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10108
10116
  sleep(5)
10109
10117
  rescue
10110
10118
  begin
10111
- @driver.find_element(:xpath, '//*[@placeholder="제목"]').send_keys()
10119
+ @driver.find_element(:xpath, '//*[@title="제목"]').send_keys()
10112
10120
  sleep(1)
10113
- @driver.find_element(:xpath, '//*[@placeholder="제목"]').click
10121
+ @driver.find_element(:xpath, '//*[@title="제목"]').click
10114
10122
  sleep(1)
10115
10123
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10116
10124
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10117
10125
  sleep(5)
10118
10126
  rescue
10119
10127
  begin
10120
- @driver.find_element(:xpath, '//*[@hname="제목"]').send_keys()
10128
+ @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').send_keys()
10121
10129
  sleep(1)
10122
- @driver.find_element(:xpath, '//*[@hname="제목"]').click
10130
+ @driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').click
10123
10131
  sleep(1)
10124
10132
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10125
10133
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10126
10134
  sleep(5)
10127
10135
  rescue
10128
10136
  begin
10129
- @driver.find_element(:xpath, '//*[@id="post_subject"]').send_keys()
10137
+ @driver.find_element(:xpath, '//*[@placeholder="제목"]').send_keys()
10130
10138
  sleep(1)
10131
- @driver.find_element(:xpath, '//*[@id="post_subject"]').click
10139
+ @driver.find_element(:xpath, '//*[@placeholder="제목"]').click
10132
10140
  sleep(1)
10133
10141
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10134
10142
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10135
10143
  sleep(5)
10136
10144
  rescue
10137
10145
  begin
10138
- @driver.find_element(:xpath, '//*[@id="search_bar"]').send_keys()
10146
+ @driver.find_element(:xpath, '//*[@hname="제목"]').send_keys()
10139
10147
  sleep(1)
10140
- @driver.find_element(:xpath, '//*[@id="search_bar"]').click
10148
+ @driver.find_element(:xpath, '//*[@hname="제목"]').click
10141
10149
  sleep(1)
10142
10150
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10143
10151
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10144
10152
  sleep(5)
10145
10153
  rescue
10146
10154
  begin
10147
- @driver.find_element(:xpath, '//*[@name="SUBJECT"]').send_keys()
10155
+ @driver.find_element(:xpath, '//*[@id="post_subject"]').send_keys()
10148
10156
  sleep(1)
10149
- @driver.find_element(:xpath, '//*[@name="SUBJECT"]').click
10157
+ @driver.find_element(:xpath, '//*[@id="post_subject"]').click
10150
10158
  sleep(1)
10151
10159
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10152
10160
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10153
10161
  sleep(5)
10154
-
10155
10162
  rescue
10156
10163
  begin
10157
- @driver.find_element(:xpath, '//*[@name="rg_title"]').send_keys()
10164
+ @driver.find_element(:xpath, '//*[@id="search_bar"]').send_keys()
10158
10165
  sleep(1)
10159
- @driver.find_element(:xpath, '//*[@name="rg_title"]').click
10166
+ @driver.find_element(:xpath, '//*[@id="search_bar"]').click
10160
10167
  sleep(1)
10161
10168
  @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10162
10169
  puts '-[√] 등록을 시도하였습니다.......'.magenta
10163
10170
  sleep(5)
10164
-
10165
- rescue => e
10166
- puts '-[] 등록 실패.......'.red
10167
- puts '-[√] 로딩 및 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
10168
- puts '-[] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
10169
- @driver.window_handles.each do |handle|
10170
- @driver.switch_to.window(handle)
10171
+ rescue
10172
+ begin
10173
+ @driver.find_element(:xpath, '//*[@name="SUBJECT"]').send_keys()
10174
+ sleep(1)
10175
+ @driver.find_element(:xpath, '//*[@name="SUBJECT"]').click
10176
+ sleep(1)
10177
+ @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10178
+ puts '-[√] 등록을 시도하였습니다.......'.magenta
10179
+ sleep(5)
10180
+
10181
+ rescue
10171
10182
  begin
10172
- # 로딩 중이거나, 페이지가 완전히 로딩되지 않더라도 탭을 닫기
10173
- @driver.close
10174
- rescue Selenium::WebDriver::Error::WebDriverError => e
10175
- puts "크롬 브라우저 종료: #{e.message}"
10176
- end
10177
- end
10178
- return 0
10179
- @driver.quit
10180
- end
10181
- end
10183
+ @driver.find_element(:xpath, '//*[@name="rg_title"]').send_keys()
10184
+ sleep(1)
10185
+ @driver.find_element(:xpath, '//*[@name="rg_title"]').click
10186
+ sleep(1)
10187
+ @driver.action.key_down(:enter).key_up(:enter).perform #엔터
10188
+ puts '-[√] 등록을 시도하였습니다.......'.magenta
10189
+ sleep(5)
10190
+
10191
+ rescue => e
10192
+ puts '-[√] 등록 실패.......'.red
10193
+ puts '-[√] 로딩 및 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
10194
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
10195
+ @driver.window_handles.each do |handle|
10196
+ @driver.switch_to.window(handle)
10197
+ begin
10198
+ # 로딩 중이거나, 페이지가 완전히 로딩되지 않더라도 탭을 닫기
10199
+ @driver.close
10200
+ rescue Selenium::WebDriver::Error::WebDriverError => e
10201
+ puts "크롬 브라우저 종료: #{e.message}"
10202
+ end
10203
+ end
10204
+ return 0
10205
+ @driver.quit
10206
+ end
10207
+ end
10208
+ end
10209
+
10210
+ end
10182
10211
  end
10183
-
10184
10212
  end
10185
10213
  end
10186
10214
  end
10187
- end
10188
- end
10189
- end
10190
- end
10191
- end
10192
- end
10193
- end
10194
- end
10195
- end
10196
- end
10197
- end
10198
- end
10215
+ end
10216
+ end
10217
+ end
10218
+ end
10219
+ end
10220
+ end
10221
+ end
10222
+ end
10223
+ end
10224
+ end
10225
+ end
10226
+ ########─────────────────────────────▲▲▲▲▲▲▲ 등록버튼 2차 시도 ▲▲▲▲▲▲▲──────────────────────────────#######
10199
10227
  end
10200
- ########─────────────────────────────▲▲▲▲▲▲▲ 등록버튼 2차 시도 ▲▲▲▲▲▲▲──────────────────────────────#######
10201
10228
  end
10202
10229
  end
10203
10230
  end
@@ -10233,40 +10260,23 @@ rescue
10233
10260
  end
10234
10261
  end
10235
10262
 
10236
- sleep(3)
10237
-
10238
10263
 
10239
-
10240
10264
 
10265
+
10266
+ begin
10267
+ wait = Selenium::WebDriver::Wait.new(timeout: 3)
10268
+ alert = wait.until { @driver.switch_to.alert }
10269
+ alert_text = alert.text # alert 메시지 저장
10270
+ alert.accept
10271
+ rescue
10272
+ end
10273
+ sleep(1)
10241
10274
  ########─────────────────────────────▲▲▲▲▲▲▲ 등록버튼 ▲▲▲▲▲▲▲──────────────────────────────#######
10242
10275
  ########─────────────────────────────▲▲▲▲▲▲▲ 등록버튼 ▲▲▲▲▲▲▲──────────────────────────────#######
10243
10276
 
10244
10277
  begin
10245
- @driver.switch_to.alert
10246
- sleep(1)
10247
- error_text = @driver.switch_to.alert.text
10248
- sleep(1)
10249
- @driver.switch_to.alert.accept
10250
- puts (error_text).red
10251
- puts '-[√] 등록 로그 파일 생성 완료.......'.yellow
10252
- File.open('./log/posting_log.txt', 'a') do |ff|
10253
- ff.write('[')
10254
- ff.write(DateTime.now.strftime("%Y년%m월%d일%H시%M분"))
10255
- ff.write(']')
10256
- ff.write(post_url)
10257
- ff.write('【등록실패내용:')
10258
- ff.write(error_text)
10259
- ff.write('】')
10260
- ff.write("\n")
10261
- ff.close()
10262
- puts '-[√] 로그 파일 생성 완료.......'.yellow
10263
- end
10264
-
10265
- rescue
10266
- #@driver.execute_script("document.body.style.zoom = '1.00'")
10267
10278
  sleep(3)
10268
10279
  posting_url = @driver.current_url
10269
-
10270
10280
  puts '-[√] 등록 로그 파일 생성 완료.......'.yellow
10271
10281
  File.open('./log/posting_log.txt', 'a') do |ff|
10272
10282
  ff.write('[')
@@ -10277,11 +10287,17 @@ rescue
10277
10287
  ff.write(user_pw)
10278
10288
  ff.write(',')
10279
10289
  ff.write(posting_url)
10290
+
10291
+ if alert_text # alert가 있었다면 텍스트도 기록
10292
+ ff.write(' ▶')
10293
+ ff.write("팝업내용: #{alert_text}")
10294
+ end
10295
+
10280
10296
  ff.write("\n")
10281
10297
  ff.close()
10282
10298
  puts '-[√] 로그 파일 생성 완료.......'.yellow
10283
10299
  end
10284
-
10300
+ rescue
10285
10301
  end
10286
10302
 
10287
10303
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: posting_zon
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.82.799
4
+ version: 3.85.799
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-01 00:00:00.000000000 Z
11
11
  dependencies: []
12
12
  description: posting app
13
13
  email: mymin26@naver.com