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