board_posting_duo 0.0.7 → 0.0.9
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/board_posting_duo.rb +413 -154
- metadata +2 -2
data/lib/board_posting_duo.rb
CHANGED
@@ -30,7 +30,7 @@ require 'watir'
|
|
30
30
|
|
31
31
|
|
32
32
|
class Naver
|
33
|
-
|
33
|
+
|
34
34
|
def chrome_start(proxy)
|
35
35
|
if proxy == ''
|
36
36
|
begin
|
@@ -147,7 +147,7 @@ class Naver
|
|
147
147
|
begin
|
148
148
|
@driver.switch_to.window(@driver.window_handles[1])
|
149
149
|
|
150
|
-
@driver.close
|
150
|
+
@driver.close
|
151
151
|
rescue
|
152
152
|
@driver.switch_to.window(@driver.window_handles[0])
|
153
153
|
end
|
@@ -190,7 +190,7 @@ class Naver
|
|
190
190
|
begin
|
191
191
|
@driver.find_element(:name, 'apiKey').click
|
192
192
|
rescue
|
193
|
-
@driver.close
|
193
|
+
@driver.close
|
194
194
|
puts '-[√] 로딩 및 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
195
195
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
196
196
|
end
|
@@ -273,21 +273,26 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
273
273
|
rescue
|
274
274
|
puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
275
275
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
276
|
-
@driver.close
|
276
|
+
@driver.close
|
277
277
|
end
|
278
278
|
end
|
279
279
|
|
280
280
|
|
281
281
|
|
282
|
-
|
282
|
+
sleep(1)
|
283
283
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
284
284
|
begin
|
285
285
|
puts '-[√] 1 캡챠 발생 유무 확인.......'.green
|
286
|
-
sleep(
|
286
|
+
sleep(1)
|
287
287
|
puts '-[√] 2 캡챠 발생 유무 확인.......'.green
|
288
|
-
sleep(
|
288
|
+
sleep(1)
|
289
289
|
puts '-[√] 3 캡챠 발생 유무 확인.......'.green
|
290
|
-
sleep(
|
290
|
+
sleep(1)
|
291
|
+
# 타임아웃을 3초로 설정
|
292
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 3)
|
293
|
+
# 요소가 나타날 때까지 30초 동안 기다립니다.
|
294
|
+
wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
|
295
|
+
sleep(1)
|
291
296
|
@driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
|
292
297
|
puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
|
293
298
|
sleep(10)
|
@@ -334,10 +339,14 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
334
339
|
rescue
|
335
340
|
puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
336
341
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
337
|
-
@driver.close
|
342
|
+
@driver.close
|
338
343
|
end
|
339
344
|
end
|
340
|
-
|
345
|
+
begin
|
346
|
+
sleep(1)
|
347
|
+
@driver.switch_to.alert.accept
|
348
|
+
rescue
|
349
|
+
end
|
341
350
|
|
342
351
|
|
343
352
|
##체크박스1-1 코드 확인 및 제거 부분─────────────────────────────────────────────────────────────────────>
|
@@ -526,7 +535,7 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
526
535
|
rescue
|
527
536
|
puts '-[√] 회원가입 2차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
528
537
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
529
|
-
@driver.close
|
538
|
+
@driver.close
|
530
539
|
end
|
531
540
|
end
|
532
541
|
|
@@ -544,119 +553,119 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
544
553
|
sleep(1)
|
545
554
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
546
555
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
547
|
-
@driver.close
|
556
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
548
557
|
rescue
|
549
558
|
begin
|
550
559
|
@driver.find_element(:partial_link_text, '휴대폰 인증') #요소같고 텍스트가 다를때 텍스트로 타겟
|
551
560
|
sleep(1)
|
552
561
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
553
562
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
554
|
-
@driver.close
|
563
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
555
564
|
rescue
|
556
565
|
begin
|
557
566
|
@driver.find_element(:xpath, '//*[@id="reg_check_auth_code"]')
|
558
567
|
sleep(1)
|
559
568
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
560
569
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
561
|
-
@driver.close
|
570
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
562
571
|
rescue
|
563
572
|
begin
|
564
573
|
@driver.find_element(:xpath, '//*[@placeholder="인증번호 입력"]')
|
565
574
|
sleep(1)
|
566
575
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
567
576
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
568
|
-
@driver.close
|
577
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
569
578
|
rescue
|
570
579
|
begin
|
571
580
|
@driver.find_element(:xpath, '//*[@id="phoneCheck"]')
|
572
581
|
sleep(1)
|
573
582
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
574
583
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
575
|
-
@driver.close
|
584
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
576
585
|
rescue
|
577
586
|
begin
|
578
587
|
@driver.find_element(:partial_link_text, '인증메일 발송') #요소같고 텍스트가 다를때 텍스트로 타겟
|
579
588
|
sleep(1)
|
580
589
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
581
590
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
582
|
-
@driver.close
|
591
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
583
592
|
rescue
|
584
593
|
begin
|
585
594
|
@driver.find_element(:xpath, '//*[@placeholder="인증번호를 입력하세요"]')
|
586
595
|
sleep(1)
|
587
596
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
588
597
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
589
|
-
@driver.close
|
598
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
590
599
|
rescue
|
591
600
|
begin
|
592
601
|
@driver.find_element(:partial_link_text, 'E-mail [메일인증 필수]')
|
593
602
|
sleep(1)
|
594
603
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
595
604
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
596
|
-
@driver.close
|
605
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
597
606
|
rescue
|
598
607
|
begin
|
599
608
|
@driver.find_element(:partial_link_text, '인증번호받기') #요소같고 텍스트가 다를때 텍스트로 타겟
|
600
609
|
sleep(1)
|
601
610
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
602
611
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
603
|
-
@driver.close
|
612
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
604
613
|
rescue
|
605
614
|
begin
|
606
615
|
@driver.find_element(:partial_link_text, '인증하기') #요소같고 텍스트가 다를때 텍스트로 타겟
|
607
616
|
sleep(1)
|
608
617
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
609
618
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
610
|
-
@driver.close
|
619
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
611
620
|
rescue
|
612
621
|
begin
|
613
622
|
@driver.find_element(:partial_link_text, '인증번호 발송') #요소같고 텍스트가 다를때 텍스트로 타겟
|
614
623
|
sleep(1)
|
615
624
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
616
625
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
617
|
-
@driver.close
|
626
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
618
627
|
rescue
|
619
628
|
begin
|
620
629
|
@driver.find_element(:xpath, '//*[@id="recaptchaBindedElement0"]')
|
621
630
|
sleep(1)
|
622
631
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
623
632
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
624
|
-
@driver.close
|
633
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
625
634
|
rescue
|
626
635
|
begin
|
627
636
|
@driver.find_element(:partial_link_text, '인증번호 전송') #요소같고 텍스트가 다를때 텍스트로 타겟
|
628
637
|
sleep(1)
|
629
638
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
630
639
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
631
|
-
@driver.close
|
640
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
632
641
|
rescue
|
633
642
|
begin
|
634
643
|
@driver.find_element(:xpath, '//*[@onclick="sendSMSCode()"]')
|
635
644
|
sleep(1)
|
636
645
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
637
646
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
638
|
-
@driver.close
|
647
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
639
648
|
rescue
|
640
649
|
begin
|
641
650
|
@driver.find_element(:xpath, '//*[@id="reg_au_code"]')
|
642
651
|
sleep(1)
|
643
652
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
644
653
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
645
|
-
@driver.close
|
654
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
646
655
|
rescue
|
647
656
|
begin
|
648
657
|
@driver.find_element(:partial_link_text, '인증번호 받기') #요소같고 텍스트가 다를때 텍스트로 타겟
|
649
658
|
sleep(1)
|
650
659
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
651
660
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
652
|
-
@driver.close
|
661
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
653
662
|
rescue
|
654
663
|
begin
|
655
664
|
@driver.find_element(:xpath, '//*[@id="get_authcode"]')
|
656
665
|
sleep(1)
|
657
666
|
puts '-[√] 이메일/전화번호 인증 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
658
667
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
659
|
-
@driver.close
|
668
|
+
@driver.close #크롬창 닫기 또는 전체 닫기
|
660
669
|
rescue
|
661
670
|
|
662
671
|
end
|
@@ -1678,10 +1687,14 @@ end
|
|
1678
1687
|
rescue
|
1679
1688
|
puts '-[√] 로딩 및 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
1680
1689
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
1681
|
-
@driver.close
|
1690
|
+
@driver.close
|
1682
1691
|
end
|
1683
1692
|
|
1684
|
-
|
1693
|
+
begin
|
1694
|
+
sleep(1)
|
1695
|
+
@driver.switch_to.alert.accept
|
1696
|
+
rescue
|
1697
|
+
end
|
1685
1698
|
|
1686
1699
|
|
1687
1700
|
end
|
@@ -1721,7 +1734,7 @@ login_url = option['login_url'].to_s
|
|
1721
1734
|
rescue
|
1722
1735
|
puts '-[√] 로그엔 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
1723
1736
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
1724
|
-
@driver.close
|
1737
|
+
@driver.close
|
1725
1738
|
end
|
1726
1739
|
end
|
1727
1740
|
|
@@ -1731,11 +1744,16 @@ login_url = option['login_url'].to_s
|
|
1731
1744
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
1732
1745
|
begin
|
1733
1746
|
puts '-[√] 1 캡챠 발생 유무 확인.......'.green
|
1734
|
-
sleep(
|
1747
|
+
sleep(1)
|
1735
1748
|
puts '-[√] 2 캡챠 발생 유무 확인.......'.green
|
1736
|
-
sleep(
|
1749
|
+
sleep(1)
|
1737
1750
|
puts '-[√] 3 캡챠 발생 유무 확인.......'.green
|
1738
|
-
sleep(
|
1751
|
+
sleep(1)
|
1752
|
+
# 타임아웃을 3초로 설정
|
1753
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 3)
|
1754
|
+
# 요소가 나타날 때까지 30초 동안 기다립니다.
|
1755
|
+
wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
|
1756
|
+
sleep(1)
|
1739
1757
|
@driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
|
1740
1758
|
puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
|
1741
1759
|
sleep(10)
|
@@ -1776,7 +1794,7 @@ login_url = option['login_url'].to_s
|
|
1776
1794
|
rescue
|
1777
1795
|
puts '-[√] 로그엔 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
1778
1796
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
1779
|
-
@driver.close
|
1797
|
+
@driver.close
|
1780
1798
|
end
|
1781
1799
|
end
|
1782
1800
|
|
@@ -1843,7 +1861,17 @@ login_url = option['login_url'].to_s
|
|
1843
1861
|
begin
|
1844
1862
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
1845
1863
|
rescue
|
1846
|
-
|
1864
|
+
begin
|
1865
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[1]/div/div[1]').click
|
1866
|
+
rescue
|
1867
|
+
begin
|
1868
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_1"]/div[2]/button[1]').click
|
1869
|
+
rescue
|
1870
|
+
puts '.......'.yellow
|
1871
|
+
|
1872
|
+
end
|
1873
|
+
|
1874
|
+
end
|
1847
1875
|
|
1848
1876
|
end
|
1849
1877
|
|
@@ -1926,7 +1954,17 @@ login_url = option['login_url'].to_s
|
|
1926
1954
|
begin
|
1927
1955
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
1928
1956
|
rescue
|
1929
|
-
|
1957
|
+
begin
|
1958
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[2]/div/div[1]').click
|
1959
|
+
rescue
|
1960
|
+
begin
|
1961
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_2"]/div[2]/button[1]').click
|
1962
|
+
rescue
|
1963
|
+
puts '.......'.yellow
|
1964
|
+
|
1965
|
+
end
|
1966
|
+
|
1967
|
+
end
|
1930
1968
|
|
1931
1969
|
end
|
1932
1970
|
|
@@ -2009,7 +2047,17 @@ login_url = option['login_url'].to_s
|
|
2009
2047
|
begin
|
2010
2048
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
2011
2049
|
rescue
|
2012
|
-
|
2050
|
+
begin
|
2051
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[3]/div/div[1]').click
|
2052
|
+
rescue
|
2053
|
+
begin
|
2054
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_3"]/div[2]/button[1]').click
|
2055
|
+
rescue
|
2056
|
+
puts '.......'.yellow
|
2057
|
+
|
2058
|
+
end
|
2059
|
+
|
2060
|
+
end
|
2013
2061
|
|
2014
2062
|
end
|
2015
2063
|
|
@@ -2092,7 +2140,17 @@ login_url = option['login_url'].to_s
|
|
2092
2140
|
begin
|
2093
2141
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
2094
2142
|
rescue
|
2095
|
-
|
2143
|
+
begin
|
2144
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[4]/div/div[1]').click
|
2145
|
+
rescue
|
2146
|
+
begin
|
2147
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_4"]/div[2]/button[1]').click
|
2148
|
+
rescue
|
2149
|
+
puts '.......'.yellow
|
2150
|
+
|
2151
|
+
end
|
2152
|
+
|
2153
|
+
end
|
2096
2154
|
|
2097
2155
|
end
|
2098
2156
|
|
@@ -2175,7 +2233,17 @@ login_url = option['login_url'].to_s
|
|
2175
2233
|
begin
|
2176
2234
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
2177
2235
|
rescue
|
2178
|
-
|
2236
|
+
begin
|
2237
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[5]/div/div[1]').click
|
2238
|
+
rescue
|
2239
|
+
begin
|
2240
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_5"]/div[2]/button[1]').click
|
2241
|
+
rescue
|
2242
|
+
puts '.......'.yellow
|
2243
|
+
|
2244
|
+
end
|
2245
|
+
|
2246
|
+
end
|
2179
2247
|
|
2180
2248
|
end
|
2181
2249
|
end
|
@@ -2289,9 +2357,14 @@ login_url = option['login_url'].to_s
|
|
2289
2357
|
@driver.find_element(:xpath, '//*[@id="loginUid"]').send_keys(user_id)
|
2290
2358
|
sleep(3)
|
2291
2359
|
rescue
|
2292
|
-
|
2293
|
-
|
2294
|
-
|
2360
|
+
begin
|
2361
|
+
@driver.find_element(:xpath, '//*[@name="id"]').send_keys(user_id)
|
2362
|
+
sleep(3)
|
2363
|
+
rescue
|
2364
|
+
#puts '-[√] 로그인 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
2365
|
+
#puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
2366
|
+
#@driver.close
|
2367
|
+
end
|
2295
2368
|
end
|
2296
2369
|
end
|
2297
2370
|
end
|
@@ -2407,63 +2480,66 @@ login_url = option['login_url'].to_s
|
|
2407
2480
|
##로그인 버튼 코드 부분─────────────────────────────────────────────────────────────────────>
|
2408
2481
|
begin
|
2409
2482
|
@driver.find_element(:xpath, '//*[@class="btn btn-primary btn-block btn-lg en"]').click
|
2483
|
+
puts '-[√] 로그인 버튼 코드 1 타겟.......'.cyan
|
2410
2484
|
sleep(3)
|
2411
2485
|
rescue
|
2412
2486
|
begin
|
2413
2487
|
@driver.find_element(:xpath, '//*[@id="login_fs"]/button').click
|
2488
|
+
puts '-[√] 로그인 버튼 코드 2 타겟.......'.cyan
|
2414
2489
|
sleep(3)
|
2415
2490
|
rescue
|
2416
2491
|
begin
|
2417
|
-
@driver.find_element(:xpath, '//*[@id="basic_outlogin"]/div[3]/button')
|
2492
|
+
@driver.find_element(:xpath, '//*[@id="basic_outlogin"]/div[3]/button').click
|
2493
|
+
puts '-[√] 로그인 버튼 코드 3 타겟.......'.cyan
|
2418
2494
|
sleep(3)
|
2419
2495
|
rescue
|
2420
2496
|
begin
|
2421
2497
|
@driver.find_element(:xpath, '//*[@value="로그인"]').click
|
2498
|
+
puts '-[√] 로그인 버튼 코드 4 타겟.......'.cyan
|
2422
2499
|
sleep(3)
|
2423
2500
|
rescue
|
2424
2501
|
begin
|
2425
2502
|
@driver.find_element(:xpath, '//*[@class="btn_login"]').click
|
2503
|
+
puts '-[√] 로그인 버튼 코드 5 타겟.......'.cyan
|
2426
2504
|
sleep(3)
|
2427
2505
|
rescue
|
2428
2506
|
begin
|
2429
2507
|
@driver.find_element(:xpath, '//*[@alt="로그인"]').click
|
2508
|
+
puts '-[√] 로그인 버튼 코드 6 타겟.......'.cyan
|
2430
2509
|
sleep(3)
|
2431
2510
|
rescue
|
2432
2511
|
begin
|
2433
2512
|
@driver.find_element(:xpath, '//*[@id="mb_login"]/form/div[5]/button').click
|
2513
|
+
puts '-[√] 로그인 버튼 코드 7 타겟.......'.cyan
|
2434
2514
|
sleep(3)
|
2435
2515
|
rescue
|
2436
2516
|
begin
|
2437
2517
|
@driver.find_element(:xpath, '//*[@id="ol_submit"]').click
|
2518
|
+
puts '-[√] 로그인 버튼 코드 8 타겟.......'.cyan
|
2438
2519
|
sleep(3)
|
2439
2520
|
rescue
|
2440
2521
|
begin
|
2441
2522
|
@driver.find_element(:xpath, '//*[@alt="login"]').click
|
2523
|
+
puts '-[√] 로그인 버튼 코드 9 타겟.......'.cyan
|
2442
2524
|
sleep(3)
|
2443
2525
|
rescue
|
2444
2526
|
begin
|
2445
2527
|
@driver.find_element(:xpath, '//*[@title="login"]').click
|
2528
|
+
puts '-[√] 로그인 버튼 코드 10 타겟.......'.cyan
|
2446
2529
|
sleep(3)
|
2447
2530
|
rescue
|
2448
2531
|
begin
|
2449
2532
|
@driver.find_element(:xpath, '//*[@id="signIn_1"]').click
|
2533
|
+
puts '-[√] 로그인 버튼 코드 11 타겟.......'.cyan
|
2450
2534
|
sleep(3)
|
2451
2535
|
rescue
|
2452
2536
|
begin
|
2453
2537
|
@driver.find_element(:xpath, '//*[@id="btn_login"]').click
|
2538
|
+
puts '-[√] 로그인 버튼 코드 12 타겟.......'.cyan
|
2454
2539
|
sleep(3)
|
2455
2540
|
rescue
|
2456
|
-
|
2457
|
-
|
2458
|
-
sleep(3)
|
2459
|
-
rescue
|
2460
|
-
begin
|
2461
|
-
@driver.find_element(:xpath, '//*[@form="loginForm"]').click
|
2462
|
-
sleep(3)
|
2463
|
-
rescue
|
2464
|
-
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
2465
|
-
end
|
2466
|
-
end
|
2541
|
+
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
2542
|
+
sleep(3)
|
2467
2543
|
end
|
2468
2544
|
end
|
2469
2545
|
end
|
@@ -2477,9 +2553,17 @@ login_url = option['login_url'].to_s
|
|
2477
2553
|
end
|
2478
2554
|
end
|
2479
2555
|
##로그인 버튼 코드 부분─────────────────────────────────────────────────────────────────────<
|
2480
|
-
|
2556
|
+
begin
|
2557
|
+
sleep(1)
|
2558
|
+
@driver.switch_to.alert.accept
|
2559
|
+
rescue
|
2560
|
+
end
|
2481
2561
|
|
2482
2562
|
end
|
2563
|
+
|
2564
|
+
|
2565
|
+
|
2566
|
+
|
2483
2567
|
rescue => e
|
2484
2568
|
puts '-[√] 로그인 PASS.......'.cyan
|
2485
2569
|
puts e
|
@@ -2502,7 +2586,11 @@ begin
|
|
2502
2586
|
@driver.get(cc_check_url)
|
2503
2587
|
puts '-[√] 출석체크 페이지 URL 이동.......'.magenta
|
2504
2588
|
|
2505
|
-
|
2589
|
+
begin
|
2590
|
+
sleep(1)
|
2591
|
+
@driver.switch_to.alert.accept
|
2592
|
+
rescue
|
2593
|
+
end
|
2506
2594
|
|
2507
2595
|
begin
|
2508
2596
|
# 요소 찾기 타임아웃을 10초로 설정
|
@@ -2521,19 +2609,25 @@ begin
|
|
2521
2609
|
rescue
|
2522
2610
|
puts '-[√] 출석 체크 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
2523
2611
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
2524
|
-
@driver.close
|
2612
|
+
@driver.close
|
2525
2613
|
end
|
2526
2614
|
end
|
2527
2615
|
|
2528
2616
|
|
2617
|
+
sleep(1)
|
2529
2618
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
2530
2619
|
begin
|
2531
2620
|
puts '-[√] 1 캡챠 발생 유무 확인.......'.green
|
2532
|
-
sleep(
|
2621
|
+
sleep(1)
|
2533
2622
|
puts '-[√] 2 캡챠 발생 유무 확인.......'.green
|
2534
|
-
sleep(
|
2623
|
+
sleep(1)
|
2535
2624
|
puts '-[√] 3 캡챠 발생 유무 확인.......'.green
|
2536
|
-
sleep(
|
2625
|
+
sleep(1)
|
2626
|
+
# 타임아웃을 3초로 설정
|
2627
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 3)
|
2628
|
+
# 요소가 나타날 때까지 30초 동안 기다립니다.
|
2629
|
+
wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
|
2630
|
+
sleep(1)
|
2537
2631
|
@driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
|
2538
2632
|
puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
|
2539
2633
|
sleep(10)
|
@@ -2574,7 +2668,7 @@ begin
|
|
2574
2668
|
rescue
|
2575
2669
|
puts '-[√] 출석 체크 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
2576
2670
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
2577
|
-
@driver.close
|
2671
|
+
@driver.close
|
2578
2672
|
end
|
2579
2673
|
end
|
2580
2674
|
|
@@ -2667,7 +2761,7 @@ begin
|
|
2667
2761
|
rescue
|
2668
2762
|
sleep(1)
|
2669
2763
|
@driver.action.key_down(:enter).key_up(:enter).perform
|
2670
|
-
sleep(
|
2764
|
+
sleep(5)
|
2671
2765
|
end
|
2672
2766
|
end
|
2673
2767
|
end
|
@@ -2682,6 +2776,11 @@ begin
|
|
2682
2776
|
end
|
2683
2777
|
|
2684
2778
|
##<─────────────────────────────────────────────────────────────────────출석 체크 입력 코드 부분
|
2779
|
+
begin
|
2780
|
+
sleep(1)
|
2781
|
+
@driver.switch_to.alert.accept
|
2782
|
+
rescue
|
2783
|
+
end
|
2685
2784
|
|
2686
2785
|
|
2687
2786
|
end
|
@@ -2710,6 +2809,12 @@ post_url = option['post_url'].to_s
|
|
2710
2809
|
@driver.get(post_url)
|
2711
2810
|
sleep(1)
|
2712
2811
|
|
2812
|
+
begin
|
2813
|
+
sleep(1)
|
2814
|
+
@driver.switch_to.alert.accept
|
2815
|
+
rescue
|
2816
|
+
end
|
2817
|
+
|
2713
2818
|
begin
|
2714
2819
|
# 요소 찾기 타임아웃을 10초로 설정
|
2715
2820
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
@@ -2727,18 +2832,24 @@ post_url = option['post_url'].to_s
|
|
2727
2832
|
rescue
|
2728
2833
|
puts '-[√] 글쓰기 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
2729
2834
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
2730
|
-
@driver.close
|
2835
|
+
@driver.close
|
2731
2836
|
end
|
2732
2837
|
end
|
2733
|
-
|
2838
|
+
|
2839
|
+
sleep(1)
|
2734
2840
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
2735
2841
|
begin
|
2736
2842
|
puts '-[√] 1 캡챠 발생 유무 확인.......'.green
|
2737
|
-
sleep(
|
2843
|
+
sleep(1)
|
2738
2844
|
puts '-[√] 2 캡챠 발생 유무 확인.......'.green
|
2739
|
-
sleep(
|
2845
|
+
sleep(1)
|
2740
2846
|
puts '-[√] 3 캡챠 발생 유무 확인.......'.green
|
2741
|
-
sleep(
|
2847
|
+
sleep(1)
|
2848
|
+
# 타임아웃을 3초로 설정
|
2849
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 3)
|
2850
|
+
# 요소가 나타날 때까지 30초 동안 기다립니다.
|
2851
|
+
wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
|
2852
|
+
sleep(1)
|
2742
2853
|
@driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
|
2743
2854
|
puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
|
2744
2855
|
sleep(10)
|
@@ -2761,7 +2872,7 @@ post_url = option['post_url'].to_s
|
|
2761
2872
|
puts '-[√] 캡챠 발생 없음.......'.green
|
2762
2873
|
end
|
2763
2874
|
##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
|
2764
|
-
|
2875
|
+
|
2765
2876
|
|
2766
2877
|
begin
|
2767
2878
|
# 요소 찾기 타임아웃을 10초로 설정
|
@@ -2784,7 +2895,7 @@ post_url = option['post_url'].to_s
|
|
2784
2895
|
rescue
|
2785
2896
|
puts '-[√] 글쓰기 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
|
2786
2897
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
2787
|
-
@driver.close
|
2898
|
+
@driver.close
|
2788
2899
|
end
|
2789
2900
|
end
|
2790
2901
|
|
@@ -2854,7 +2965,17 @@ post_url = option['post_url'].to_s
|
|
2854
2965
|
begin
|
2855
2966
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
2856
2967
|
rescue
|
2857
|
-
|
2968
|
+
begin
|
2969
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[1]/div/div[1]').click
|
2970
|
+
rescue
|
2971
|
+
|
2972
|
+
begin
|
2973
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_1"]/div[2]/button[1]').click
|
2974
|
+
rescue
|
2975
|
+
puts '.......'.yellow
|
2976
|
+
|
2977
|
+
end
|
2978
|
+
end
|
2858
2979
|
|
2859
2980
|
end
|
2860
2981
|
|
@@ -2937,7 +3058,17 @@ post_url = option['post_url'].to_s
|
|
2937
3058
|
begin
|
2938
3059
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
2939
3060
|
rescue
|
2940
|
-
|
3061
|
+
begin
|
3062
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[2]/div/div[1]').click
|
3063
|
+
rescue
|
3064
|
+
begin
|
3065
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_2"]/div[2]/button[1]').click
|
3066
|
+
rescue
|
3067
|
+
puts '.......'.yellow
|
3068
|
+
|
3069
|
+
end
|
3070
|
+
|
3071
|
+
end
|
2941
3072
|
|
2942
3073
|
end
|
2943
3074
|
|
@@ -3020,7 +3151,17 @@ post_url = option['post_url'].to_s
|
|
3020
3151
|
begin
|
3021
3152
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
3022
3153
|
rescue
|
3023
|
-
|
3154
|
+
begin
|
3155
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[3]/div/div[1]').click
|
3156
|
+
rescue
|
3157
|
+
begin
|
3158
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_3"]/div[2]/button[1]').click
|
3159
|
+
rescue
|
3160
|
+
puts '.......'.yellow
|
3161
|
+
|
3162
|
+
end
|
3163
|
+
|
3164
|
+
end
|
3024
3165
|
|
3025
3166
|
end
|
3026
3167
|
|
@@ -3103,7 +3244,17 @@ post_url = option['post_url'].to_s
|
|
3103
3244
|
begin
|
3104
3245
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
3105
3246
|
rescue
|
3106
|
-
|
3247
|
+
begin
|
3248
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[4]/div/div[1]').click
|
3249
|
+
rescue
|
3250
|
+
begin
|
3251
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_4"]/div[2]/button[1]').click
|
3252
|
+
rescue
|
3253
|
+
puts '.......'.yellow
|
3254
|
+
|
3255
|
+
end
|
3256
|
+
|
3257
|
+
end
|
3107
3258
|
|
3108
3259
|
end
|
3109
3260
|
|
@@ -3186,7 +3337,26 @@ post_url = option['post_url'].to_s
|
|
3186
3337
|
begin
|
3187
3338
|
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
3188
3339
|
rescue
|
3189
|
-
|
3340
|
+
begin
|
3341
|
+
@driver.find_element(:xpath, '//*[@id="banner"]/div[5]/div/div[1]').click
|
3342
|
+
rescue
|
3343
|
+
begin
|
3344
|
+
@driver.find_element(:xpath, '//*[@id="hd_pops_5"]/div[2]/button[1]').click
|
3345
|
+
rescue
|
3346
|
+
begin
|
3347
|
+
@driver.switch_to.frame(@driver.find_element(:xpath, '//*[@id="aswift_1"]'))
|
3348
|
+
sleep(1)
|
3349
|
+
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
3350
|
+
sleep(1)
|
3351
|
+
@driver.switch_to.default_content
|
3352
|
+
rescue
|
3353
|
+
puts '.......'.yellow
|
3354
|
+
|
3355
|
+
end
|
3356
|
+
|
3357
|
+
end
|
3358
|
+
|
3359
|
+
end
|
3190
3360
|
|
3191
3361
|
end
|
3192
3362
|
end
|
@@ -3401,7 +3571,13 @@ begin
|
|
3401
3571
|
@driver.find_element(:xpath, '//*[@name="wr_5"]').send_keys(more_txt1)
|
3402
3572
|
sleep(1)
|
3403
3573
|
rescue
|
3404
|
-
|
3574
|
+
begin
|
3575
|
+
@driver.find_element(:xpath, '//*[@name="wr_10"]').send_keys(more_txt1)
|
3576
|
+
sleep(1)
|
3577
|
+
rescue
|
3578
|
+
puts '-[√] 기타 입력 부분 탐색 1차 코드 탐색 종료.......'.yellow
|
3579
|
+
|
3580
|
+
end
|
3405
3581
|
|
3406
3582
|
end
|
3407
3583
|
|
@@ -3431,7 +3607,13 @@ begin
|
|
3431
3607
|
@driver.find_element(:xpath, '//*[@name="wr_6"]').send_keys(more_txt2)
|
3432
3608
|
sleep(1)
|
3433
3609
|
rescue
|
3434
|
-
|
3610
|
+
begin
|
3611
|
+
@driver.find_element(:xpath, '//*[@name="wr_11"]').send_keys(more_txt1)
|
3612
|
+
sleep(1)
|
3613
|
+
rescue
|
3614
|
+
puts '-[√] 기타 입력 부분 탐색 1차 코드 탐색 종료.......'.yellow
|
3615
|
+
|
3616
|
+
end
|
3435
3617
|
|
3436
3618
|
end
|
3437
3619
|
|
@@ -3461,7 +3643,13 @@ begin
|
|
3461
3643
|
@driver.find_element(:xpath, '//*[@name="wr_7"]').send_keys(more_txt3)
|
3462
3644
|
sleep(1)
|
3463
3645
|
rescue
|
3464
|
-
|
3646
|
+
begin
|
3647
|
+
@driver.find_element(:xpath, '//*[@name="wr_12"]').send_keys(more_txt1)
|
3648
|
+
sleep(1)
|
3649
|
+
rescue
|
3650
|
+
puts '-[√] 기타 입력 부분 탐색 1차 코드 탐색 종료.......'.yellow
|
3651
|
+
|
3652
|
+
end
|
3465
3653
|
|
3466
3654
|
end
|
3467
3655
|
|
@@ -3491,7 +3679,49 @@ begin
|
|
3491
3679
|
@driver.find_element(:xpath, '//*[@name="wr_8"]').send_keys(more_txt4)
|
3492
3680
|
sleep(1)
|
3493
3681
|
rescue
|
3494
|
-
|
3682
|
+
begin
|
3683
|
+
@driver.find_element(:xpath, '//*[@name="wr_13"]').send_keys(more_txt1)
|
3684
|
+
sleep(1)
|
3685
|
+
rescue
|
3686
|
+
puts '-[√] 기타 입력 부분 탐색 1차 코드 탐색 종료.......'.yellow
|
3687
|
+
|
3688
|
+
end
|
3689
|
+
|
3690
|
+
end
|
3691
|
+
|
3692
|
+
end
|
3693
|
+
|
3694
|
+
end
|
3695
|
+
|
3696
|
+
end
|
3697
|
+
##<─────────────────────────────────────────────────────────────기타 입력 부분 탐색 4차 코드 부분
|
3698
|
+
|
3699
|
+
##기타 입력 부분 탐색 4차 코드 부분─────────────────────────────────────────────────────────────>
|
3700
|
+
##기타 입력 부분 탐색 4차 코드 부분─────────────────────────────────────────────────────────────>
|
3701
|
+
##기타 입력 부분 탐색 4차 코드 부분─────────────────────────────────────────────────────────────>
|
3702
|
+
begin
|
3703
|
+
@driver.find_element(:xpath, '//*[@id="wr_9"]').send_keys(more_txt4)
|
3704
|
+
sleep(1)
|
3705
|
+
rescue
|
3706
|
+
begin
|
3707
|
+
@driver.find_element(:xpath, '//*[@name="wr_9"]').send_keys(more_txt4)
|
3708
|
+
sleep(1)
|
3709
|
+
rescue
|
3710
|
+
begin
|
3711
|
+
@driver.find_element(:xpath, '//*[@id="wr_9"]').send_keys(more_txt4)
|
3712
|
+
sleep(1)
|
3713
|
+
rescue
|
3714
|
+
begin
|
3715
|
+
@driver.find_element(:xpath, '//*[@name="wr_9"]').send_keys(more_txt4)
|
3716
|
+
sleep(1)
|
3717
|
+
rescue
|
3718
|
+
begin
|
3719
|
+
@driver.find_element(:xpath, '//*[@name="wr_14"]').send_keys(more_txt1)
|
3720
|
+
sleep(1)
|
3721
|
+
rescue
|
3722
|
+
puts '-[√] 기타 입력 부분 탐색 1차 코드 탐색 종료.......'.yellow
|
3723
|
+
|
3724
|
+
end
|
3495
3725
|
|
3496
3726
|
end
|
3497
3727
|
|
@@ -3565,12 +3795,11 @@ begin
|
|
3565
3795
|
end
|
3566
3796
|
end
|
3567
3797
|
|
3568
|
-
|
3569
3798
|
rescue => e
|
3570
3799
|
puts '-[√] 카테고리 ERROR 발생.......'.red
|
3571
3800
|
puts '-[√] 카테고리 이름 및 카테고리 여부를 다시 확인해주세요.......'.red
|
3572
3801
|
puts '-[√] 다음 작업 준비 중으로 1~60 초 정도 기다려주세요.......'.red
|
3573
|
-
@driver.close
|
3802
|
+
@driver.close
|
3574
3803
|
end
|
3575
3804
|
sleep(1)
|
3576
3805
|
##<─────────────────────────────────────────────────────────────────────카테고리 선택 코드 부분
|
@@ -3622,7 +3851,7 @@ begin
|
|
3622
3851
|
puts '-[√] 제목 입력 필드 탐색 시작.......'.yellow
|
3623
3852
|
sleep(1)
|
3624
3853
|
begin
|
3625
|
-
|
3854
|
+
@driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys(title)
|
3626
3855
|
rescue
|
3627
3856
|
begin
|
3628
3857
|
@driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys(title)
|
@@ -3672,9 +3901,19 @@ begin
|
|
3672
3901
|
begin
|
3673
3902
|
@driver.find_element(:xpath, '//*[@for="wr_subject"]').send_keys(title)
|
3674
3903
|
rescue
|
3675
|
-
|
3676
|
-
|
3677
|
-
|
3904
|
+
begin
|
3905
|
+
|
3906
|
+
@driver.find_element(:xpath, '/html/body/div[4]/div/div[2]/section/form/div[2]/div/input').click
|
3907
|
+
|
3908
|
+
@driver.action.send_keys(title).perform
|
3909
|
+
|
3910
|
+
|
3911
|
+
rescue
|
3912
|
+
puts '-[√] 제목 입력 항목 코드 탐색 실패!!.......'.red
|
3913
|
+
puts '-[√] 다음 작업 준비 중으로 1~60 초 정도 기다려주세요.......'.red
|
3914
|
+
@driver.close
|
3915
|
+
|
3916
|
+
end
|
3678
3917
|
|
3679
3918
|
end
|
3680
3919
|
end
|
@@ -3777,7 +4016,17 @@ begin
|
|
3777
4016
|
sleep(1)
|
3778
4017
|
@driver.find_element(:xpath, '//*[@id="html-1"]').click
|
3779
4018
|
rescue
|
3780
|
-
|
4019
|
+
begin
|
4020
|
+
@driver.find_element(:xpath, '//*[@id="html-1"]').click
|
4021
|
+
rescue
|
4022
|
+
begin
|
4023
|
+
@driver.find_element(:xpath, '//*[@class="fas fa-code"]').click
|
4024
|
+
rescue
|
4025
|
+
puts '-[√] HTML 코드 탐색 실패.......'.red
|
4026
|
+
|
4027
|
+
end
|
4028
|
+
|
4029
|
+
end
|
3781
4030
|
|
3782
4031
|
end
|
3783
4032
|
|
@@ -3830,12 +4079,12 @@ sleep(1)
|
|
3830
4079
|
begin
|
3831
4080
|
@driver.find_element(:xpath, '//*[@name="content"]').click
|
3832
4081
|
sleep(1)
|
3833
|
-
puts '1.......'.red
|
4082
|
+
puts '내용 항목 코드 타겟 1.......'.red
|
3834
4083
|
rescue
|
3835
4084
|
begin
|
3836
4085
|
@driver.find_element(:xpath, '//*[@class="note-codable"]').click
|
3837
4086
|
sleep(1)
|
3838
|
-
puts '2.......'.red
|
4087
|
+
puts '내용 항목 코드 타겟 2.......'.red
|
3839
4088
|
rescue
|
3840
4089
|
begin
|
3841
4090
|
#아이프레임에서 코드 선택
|
@@ -3844,22 +4093,22 @@ rescue
|
|
3844
4093
|
#아이프레임 나오기
|
3845
4094
|
@driver.switch_to.default_content()
|
3846
4095
|
sleep(1)
|
3847
|
-
puts '3.......'.red
|
4096
|
+
puts '내용 항목 코드 타겟 3.......'.red
|
3848
4097
|
rescue
|
3849
4098
|
begin
|
3850
4099
|
@driver.find_element(:xpath, '//*[@class="wr_content"]').click
|
3851
4100
|
sleep(1)
|
3852
|
-
puts '4.......'.red
|
4101
|
+
puts '내용 항목 코드 타겟 4.......'.red
|
3853
4102
|
rescue
|
3854
4103
|
begin
|
3855
4104
|
@driver.find_element(:xpath, '//*[@id="wr_content"]').click
|
3856
4105
|
sleep(1)
|
3857
|
-
puts '5.......'.red
|
4106
|
+
puts '내용 항목 코드 타겟 5.......'.red
|
3858
4107
|
rescue
|
3859
4108
|
begin
|
3860
4109
|
@driver.find_element(:xpath, '//*[@name="wr_content"]').click
|
3861
4110
|
sleep(1)
|
3862
|
-
puts '6.......'.red
|
4111
|
+
puts '내용 항목 코드 타겟 6.......'.red
|
3863
4112
|
rescue
|
3864
4113
|
begin
|
3865
4114
|
#아이프레임에서 코드 선택
|
@@ -3868,17 +4117,17 @@ rescue
|
|
3868
4117
|
#아이프레임 나오기
|
3869
4118
|
@driver.switch_to.default_content()
|
3870
4119
|
sleep(1)
|
3871
|
-
puts '7.......'.red
|
4120
|
+
puts '내용 항목 코드 타겟 7.......'.red
|
3872
4121
|
rescue
|
3873
4122
|
begin
|
3874
4123
|
@driver.find_element(:xpath, '//*[@id="edit_contents_textareaBox"]/td/textarea').click
|
3875
4124
|
sleep(1)
|
3876
|
-
puts '8.......'.red
|
4125
|
+
puts '내용 항목 코드 타겟 8.......'.red
|
3877
4126
|
rescue
|
3878
4127
|
begin
|
3879
4128
|
@driver.find_element(:xpath, '//*[@name="kboard_content"]').click
|
3880
4129
|
sleep(1)
|
3881
|
-
puts '9.......'.red
|
4130
|
+
puts '내용 항목 코드 타겟 9.......'.red
|
3882
4131
|
rescue
|
3883
4132
|
begin
|
3884
4133
|
#아이프레임에서 코드 선택
|
@@ -3887,114 +4136,119 @@ rescue
|
|
3887
4136
|
#아이프레임 나오기
|
3888
4137
|
@driver.switch_to.default_content()
|
3889
4138
|
sleep(1)
|
3890
|
-
puts '10.......'.red
|
4139
|
+
puts '내용 항목 코드 타겟 10.......'.red
|
3891
4140
|
rescue
|
3892
4141
|
begin
|
3893
4142
|
@driver.find_element(:xpath, '//*[@title="리치 텍스트 편집기, content"]').click
|
3894
4143
|
sleep(1)
|
3895
|
-
puts '11.......'.red
|
4144
|
+
puts '내용 항목 코드 타겟 11.......'.red
|
3896
4145
|
rescue
|
3897
4146
|
begin
|
3898
4147
|
@driver.find_element(:xpath, '//*[@aria-label="리치 텍스트 편집기, content"]').click
|
3899
4148
|
sleep(1)
|
3900
|
-
puts '12.......'.red
|
4149
|
+
puts '내용 항목 코드 타겟 12.......'.red
|
3901
4150
|
rescue
|
3902
4151
|
begin
|
3903
4152
|
@driver.find_element(:xpath, '//*[@aria-label="리치 텍스트 편집기, editor1"]').click
|
3904
4153
|
sleep(1)
|
3905
|
-
puts '13.......'.red
|
4154
|
+
puts '내용 항목 코드 타겟 13.......'.red
|
3906
4155
|
rescue
|
3907
4156
|
begin
|
3908
4157
|
@driver.find_element(:xpath, '//*[@title="리치 텍스트 편집기, editor1"]').click
|
3909
4158
|
sleep(1)
|
3910
|
-
puts '14.......'.red
|
4159
|
+
puts '내용 항목 코드 타겟 14.......'.red
|
3911
4160
|
rescue
|
3912
4161
|
begin
|
3913
4162
|
@driver.find_element(:xpath, '//*[@id="cke_1_contents"]/textarea]').click
|
3914
4163
|
sleep(1)
|
3915
|
-
puts '15.......'.red
|
4164
|
+
puts '내용 항목 코드 타겟 15.......'.red
|
3916
4165
|
rescue
|
3917
4166
|
begin
|
3918
4167
|
@driver.find_element(:xpath, '//*[@placeholder="내용을 구체적으로 등록해 주세요."]').click
|
3919
4168
|
sleep(1)
|
3920
|
-
puts '16.......'.red
|
4169
|
+
puts '내용 항목 코드 타겟 16.......'.red
|
3921
4170
|
rescue
|
3922
4171
|
begin
|
3923
4172
|
@driver.find_element(:xpath, '//*[@class="fr-code"]').click
|
3924
4173
|
sleep(1)
|
3925
|
-
puts '17.......'.red
|
4174
|
+
puts '내용 항목 코드 타겟 17.......'.red
|
3926
4175
|
rescue
|
3927
4176
|
begin
|
3928
4177
|
@driver.find_element(:xpath, '//*[@title="내용"]').click
|
3929
4178
|
sleep(1)
|
3930
|
-
puts '18.......'.red
|
4179
|
+
puts '내용 항목 코드 타겟 18.......'.red
|
3931
4180
|
rescue
|
3932
4181
|
begin
|
3933
4182
|
@driver.find_element(:xpath, '//*[@class="cheditor-editarea-text-content"]').click
|
3934
4183
|
sleep(1)
|
3935
|
-
puts '19.......'.red
|
4184
|
+
puts '내용 항목 코드 타겟 19.......'.red
|
3936
4185
|
rescue
|
3937
4186
|
begin
|
3938
4187
|
@driver.switch_to.frame(@driver.find_element(:xpath, '//*[@id="bowrite_content"]/div/iframe"]'))
|
3939
4188
|
@driver.find_element(:xpath, '//*[@title="HTML 편집 모드"]').click
|
3940
4189
|
@driver.switch_to.default_content()
|
3941
4190
|
sleep(1)
|
3942
|
-
puts '20.......'.red
|
4191
|
+
puts '내용 항목 코드 타겟 20.......'.red
|
3943
4192
|
rescue
|
3944
4193
|
begin
|
3945
4194
|
@driver.find_element(:xpath, '//*[@class="CodeMirror-lines"]').click
|
3946
4195
|
sleep(1)
|
3947
|
-
puts '21.......'.red
|
4196
|
+
puts '내용 항목 코드 타겟 21.......'.red
|
3948
4197
|
rescue
|
3949
4198
|
begin
|
3950
4199
|
@driver.find_element(:xpath, '//*[@id="tx_canvas_source"]').click
|
3951
4200
|
sleep(1)
|
3952
|
-
puts '22.......'.red
|
4201
|
+
puts '내용 항목 코드 타겟 22.......'.red
|
3953
4202
|
rescue
|
3954
4203
|
begin
|
3955
4204
|
@driver.find_element(:xpath, '//*[@class="note-editable"]').click
|
3956
4205
|
sleep(1)
|
3957
|
-
puts '23.......'.red
|
4206
|
+
puts '내용 항목 코드 타겟 23.......'.red
|
3958
4207
|
rescue
|
3959
4208
|
begin
|
3960
4209
|
@driver.find_element(:xpath, '//*[@role="textbox"]').click
|
3961
4210
|
sleep(1)
|
3962
|
-
puts '24.......'.red
|
4211
|
+
puts '내용 항목 코드 타겟 24.......'.red
|
3963
4212
|
rescue
|
3964
4213
|
begin
|
3965
4214
|
@driver.switch_to.frame(@driver.find_element(:xpath, '//*[@id="cke_1_contents"]/iframe'))
|
3966
4215
|
@driver.find_element(:xpath, '/html/body').click
|
3967
4216
|
sleep(1)
|
3968
|
-
puts '25.......'.red
|
4217
|
+
puts '내용 항목 코드 타겟 25.......'.red
|
3969
4218
|
rescue
|
3970
4219
|
begin
|
3971
4220
|
@driver.switch_to.frame(@driver.find_element(:xpath, '//*[@id="b_content_ifr"]'))
|
3972
4221
|
@driver.find_element(:xpath, '//*[@id="tinymce"]').click
|
3973
4222
|
sleep(1)
|
3974
|
-
puts '26.......'.red
|
4223
|
+
puts '내용 항목 코드 타겟 26.......'.red
|
3975
4224
|
rescue
|
3976
4225
|
begin
|
3977
4226
|
@driver.find_element(:xpath, '//*[@id="com_txt_box"]').click
|
3978
4227
|
sleep(1)
|
3979
|
-
puts '27.......'.red
|
4228
|
+
puts '내용 항목 코드 타겟 27.......'.red
|
3980
4229
|
rescue
|
3981
4230
|
begin
|
3982
4231
|
@driver.find_element(:xpath, '//*[@aria-label="Source code editing area"]').click
|
3983
4232
|
sleep(1)
|
3984
|
-
puts '28.......'.red
|
4233
|
+
puts '내용 항목 코드 타겟 28.......'.red
|
3985
4234
|
rescue
|
3986
4235
|
begin
|
3987
4236
|
@driver.find_element(:xpath, '//*[@title="리치 텍스트 편집기, postContent"]').click
|
3988
4237
|
sleep(1)
|
3989
|
-
puts '29.......'.red
|
4238
|
+
puts '내용 항목 코드 타겟 29.......'.red
|
3990
4239
|
rescue
|
3991
4240
|
begin
|
3992
|
-
|
3993
|
-
@driver.find_element(:xpath, '//*[@id="wr_content" name="wr_content"]').click
|
4241
|
+
@driver.find_element(:xpath, '//*[@id="post_body"]/div[1]/div').click
|
3994
4242
|
sleep(1)
|
3995
|
-
puts '
|
4243
|
+
puts '내용 항목 코드 타겟 30.......'.red
|
3996
4244
|
rescue
|
3997
|
-
|
4245
|
+
begin
|
4246
|
+
@driver.find_element(:xpath, '//*[@class="fr-element fr-view"]').click
|
4247
|
+
sleep(1)
|
4248
|
+
puts '내용 항목 코드 타겟 31.......'.red
|
4249
|
+
rescue
|
4250
|
+
|
4251
|
+
end
|
3998
4252
|
end
|
3999
4253
|
end
|
4000
4254
|
end
|
@@ -4109,7 +4363,7 @@ if option['내용사진자동삽입'] == 'true'
|
|
4109
4363
|
@driver.find_element(:xpath, '//*[@class="btn btn-success fileinput-button"]').click #이미지 올리기 버튼
|
4110
4364
|
rescue
|
4111
4365
|
begin
|
4112
|
-
@driver.close
|
4366
|
+
@driver.close
|
4113
4367
|
rescue
|
4114
4368
|
end
|
4115
4369
|
end
|
@@ -5364,7 +5618,6 @@ end
|
|
5364
5618
|
|
5365
5619
|
|
5366
5620
|
|
5367
|
-
|
5368
5621
|
sleep(1)
|
5369
5622
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
5370
5623
|
begin
|
@@ -5373,9 +5626,15 @@ sleep(2)
|
|
5373
5626
|
puts '-[√] 캡챠 해제 가능 유무 확인.......'.green
|
5374
5627
|
sleep(2)
|
5375
5628
|
puts '-[√] 캡챠 해제 가능 유무 확인.......'.green
|
5376
|
-
sleep(
|
5629
|
+
sleep(1)
|
5630
|
+
# 타임아웃을 3초로 설정
|
5631
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 3)
|
5632
|
+
# 요소가 나타날 때까지 30초 동안 기다립니다.
|
5633
|
+
wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
|
5634
|
+
sleep(1)
|
5377
5635
|
@driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
|
5378
5636
|
puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
|
5637
|
+
|
5379
5638
|
sleep(10)
|
5380
5639
|
begin
|
5381
5640
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
@@ -5415,116 +5674,116 @@ end
|
|
5415
5674
|
##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
|
5416
5675
|
sleep(1)
|
5417
5676
|
|
5418
|
-
#@driver.execute_script("document.body.style.zoom = '0.
|
5677
|
+
#@driver.execute_script("document.body.style.zoom = '0.70'")
|
5419
5678
|
sleep(1)
|
5420
5679
|
##등록 버튼 코드 부분─────────────────────────────────────────────────────────────────────>
|
5421
5680
|
puts '-[√] 내용 등록 버튼 탐색 시작.......'.yellow
|
5422
5681
|
########─────────────────────────────▼▼▼▼▼▼▼ 등록버튼 ▼▼▼▼▼▼▼──────────────────────────────#######
|
5423
5682
|
begin
|
5424
|
-
@driver.find_element(:xpath, '//*[@
|
5425
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5683
|
+
@driver.find_element(:xpath, '//*[@value="등록"]').click
|
5684
|
+
puts '-[√] 등록을 1번 코드로 시도하였습니다.......'.magenta
|
5426
5685
|
sleep(5)
|
5427
5686
|
rescue
|
5428
5687
|
begin
|
5429
5688
|
@driver.find_element(:xpath, '//*[@alt="등록"]').click
|
5430
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5689
|
+
puts '-[√] 등록을 2번 코드로 시도하였습니다.......'.magenta
|
5431
5690
|
sleep(5)
|
5432
5691
|
rescue
|
5433
5692
|
begin
|
5434
5693
|
@driver.find_element(:xpath, '//*[@value="작성완료"]').click
|
5435
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5694
|
+
puts '-[√] 등록을 3번 코드로 시도하였습니다.......'.magenta
|
5436
5695
|
sleep(5)
|
5437
5696
|
rescue
|
5438
5697
|
begin
|
5439
5698
|
@driver.find_element(:xpath, '//*[@id="btn_submit"]').click
|
5440
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5699
|
+
puts '-[√] 등록을 4번 코드로 시도하였습니다.......'.magenta
|
5441
5700
|
sleep(5)
|
5442
5701
|
rescue
|
5443
5702
|
begin
|
5444
|
-
@driver.find_element(:xpath, '//*[@class="btn btn-success btn-sm"]')
|
5445
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5703
|
+
@driver.find_element(:xpath, '//*[@class="btn btn-success btn-sm"]')
|
5704
|
+
puts '-[√] 등록을 5번 코드로 시도하였습니다.......'.magenta
|
5446
5705
|
sleep(5)
|
5447
5706
|
rescue
|
5448
5707
|
begin
|
5449
5708
|
@driver.find_element(:xpath, '//*[@class="btn btn-default btn-send-write"]').click
|
5450
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5709
|
+
puts '-[√] 등록을 6번 코드로 시도하였습니다.......'.magenta
|
5451
5710
|
sleep(5)
|
5452
5711
|
rescue
|
5453
5712
|
begin
|
5454
5713
|
@driver.find_element(:xpath, '//*[@title="확인"]').click
|
5455
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5714
|
+
puts '-[√] 등록을 7번 코드로 시도하였습니다.......'.magenta
|
5456
5715
|
sleep(5)
|
5457
5716
|
rescue
|
5458
5717
|
begin
|
5459
5718
|
@driver.find_element(:xpath, '//*[@id="btnSubmit"]').click
|
5460
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5719
|
+
puts '-[√] 등록을 8번 코드로 시도하였습니다.......'.magenta
|
5461
5720
|
sleep(5)
|
5462
5721
|
rescue
|
5463
5722
|
begin
|
5464
5723
|
@driver.find_element(:xpath, '//*[@src="images/board8_input.gif"]').click
|
5465
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5724
|
+
puts '-[√] 등록을 9번 코드로 시도하였습니다.......'.magenta
|
5466
5725
|
sleep(5)
|
5467
5726
|
rescue
|
5468
5727
|
begin
|
5469
|
-
@driver.find_element(:xpath, '//*[@
|
5470
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5728
|
+
@driver.find_element(:xpath, '//*[@align="absmiddle"]').click
|
5729
|
+
puts '-[√] 등록을 10번 코드로 시도하였습니다.......'.magenta
|
5471
5730
|
sleep(5)
|
5472
5731
|
rescue
|
5473
5732
|
begin
|
5474
5733
|
@driver.find_element(:partial_link_text, '작성완료').click #요소같고 텍스트가 다를때 텍스트로 타겟
|
5475
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5734
|
+
puts '-[√] 등록을 11번 코드로 시도하였습니다.......'.magenta
|
5476
5735
|
sleep(5)
|
5477
5736
|
rescue
|
5478
5737
|
begin
|
5479
5738
|
@driver.find_element(:xpath, '//*[@class="_save_post save_post btn"]').click
|
5480
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5739
|
+
puts '-[√] 등록을 12번 코드로 시도하였습니다.......'.magenta
|
5481
5740
|
sleep(5)
|
5482
5741
|
rescue
|
5483
5742
|
begin
|
5484
5743
|
@driver.find_element(:xpath, '//*[@id="main_btn_box"]/button').click
|
5485
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5744
|
+
puts '-[√] 등록을 13번 코드로 시도하였습니다.......'.magenta
|
5486
5745
|
sleep(5)
|
5487
5746
|
rescue
|
5488
5747
|
begin
|
5489
5748
|
@driver.find_element(:xpath, '//*[@type="submit"]').click
|
5490
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5749
|
+
puts '-[√] 등록을 14번 코드로 시도하였습니다.......'.magenta
|
5491
5750
|
sleep(5)
|
5492
5751
|
rescue
|
5493
5752
|
begin
|
5494
5753
|
@driver.find_element(:xpath, '//*[@id="bd-write-btns"]/button').click
|
5495
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5754
|
+
puts '-[√] 등록을 15번 코드로 시도하였습니다.......'.magenta
|
5496
5755
|
sleep(5)
|
5497
5756
|
rescue
|
5498
5757
|
begin
|
5499
5758
|
@driver.find_element(:xpath, '//*[@id="com_btn"]').click
|
5500
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5759
|
+
puts '-[√] 등록을 16번 코드로 시도하였습니다.......'.magenta
|
5501
5760
|
sleep(5)
|
5502
5761
|
rescue
|
5503
5762
|
begin
|
5504
5763
|
@driver.find_element(:xpath, '//*[@class="submit"]').click
|
5505
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5764
|
+
puts '-[√] 등록을 17번 코드로 시도하였습니다.......'.magenta
|
5506
5765
|
sleep(5)
|
5507
5766
|
rescue
|
5508
5767
|
begin
|
5509
5768
|
@driver.find_element(:xpath, '//*[@id="savePostInBoard"]').click
|
5510
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5769
|
+
puts '-[√] 등록을 18번 코드로 시도하였습니다.......'.magenta
|
5511
5770
|
sleep(5)
|
5512
5771
|
rescue
|
5513
5772
|
begin
|
5514
5773
|
@driver.find_element(:xpath, '//*[@form="write"]').click
|
5515
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5774
|
+
puts '-[√] 등록을 19번 코드로 시도하였습니다.......'.magenta
|
5516
5775
|
sleep(5)
|
5517
5776
|
|
5518
5777
|
rescue
|
5519
5778
|
begin
|
5520
5779
|
@driver.find_element(:partial_link_text, '저장하기').click #요소같고 텍스트가 다를때 텍스트로 타겟
|
5521
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5780
|
+
puts '-[√] 등록을 20번 코드로 시도하였습니다.......'.magenta
|
5522
5781
|
sleep(5)
|
5523
5782
|
|
5524
5783
|
rescue
|
5525
5784
|
begin
|
5526
5785
|
@driver.find_element(:xpath, '//*[@id="boardWriteForm"]/div/div[3]/a[2]').click
|
5527
|
-
puts '-[√] 등록을 시도하였습니다.......'.magenta
|
5786
|
+
puts '-[√] 등록을 21시도하였습니다.......'.magenta
|
5528
5787
|
sleep(5)
|
5529
5788
|
|
5530
5789
|
rescue
|
@@ -5648,7 +5907,7 @@ rescue
|
|
5648
5907
|
puts '-[√] 등록 실패.......'.red
|
5649
5908
|
puts '-[√] 로딩 및 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
5650
5909
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
5651
|
-
@driver.close
|
5910
|
+
@driver.close
|
5652
5911
|
|
5653
5912
|
end
|
5654
5913
|
|
@@ -5715,8 +5974,8 @@ rescue
|
|
5715
5974
|
sleep(1)
|
5716
5975
|
@driver.switch_to.alert.accept
|
5717
5976
|
puts (error_text).red
|
5718
|
-
puts '-[√] 등록
|
5719
|
-
File.open('./log/
|
5977
|
+
puts '-[√] 등록 로그 파일 생성 완료.......'.yellow
|
5978
|
+
File.open('./log/posting_log.txt', 'a') do |ff|
|
5720
5979
|
ff.write('[')
|
5721
5980
|
ff.write(DateTime.now.strftime("%Y년%m월%d일%H시%M분"))
|
5722
5981
|
ff.write(']')
|
@@ -5732,8 +5991,8 @@ rescue
|
|
5732
5991
|
sleep(3)
|
5733
5992
|
posting_url = @driver.current_url
|
5734
5993
|
|
5735
|
-
puts '-[√] 등록
|
5736
|
-
File.open('./log/
|
5994
|
+
puts '-[√] 등록 로그 파일 생성 완료.......'.yellow
|
5995
|
+
File.open('./log/posting_log.txt', 'a') do |ff|
|
5737
5996
|
ff.write('[')
|
5738
5997
|
ff.write(DateTime.now.strftime("%Y년%m월%d일%H시%M분"))
|
5739
5998
|
ff.write(']')
|
@@ -5758,10 +6017,10 @@ end
|
|
5758
6017
|
|
5759
6018
|
rescue => e
|
5760
6019
|
puts '-[√] 글쓰기 페이지 접근 및 코드 탐색 ERROR 발생.......'.red
|
5761
|
-
@driver.close
|
6020
|
+
@driver.close
|
5762
6021
|
end
|
5763
6022
|
sleep(3)
|
5764
|
-
|
6023
|
+
@driver.quit
|
5765
6024
|
end
|
5766
6025
|
|
5767
6026
|
|