board_posting_duo 0.0.30 → 0.0.32

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/board_posting_duo.rb +512 -140
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 15e7b9e8755ad040b8c3e2af16e99101cffd8ebf0128ce2768956d019a622e49
4
- data.tar.gz: 8db58677ea5486f099025d7fda209803f9967bf009173c1ced1e06b77c8e07e0
3
+ metadata.gz: 2b7bdb5f134a3b4ebb5ebc01167a2f5fac853e5d9bc8930a8b404a3e4b9032b7
4
+ data.tar.gz: b91a388499d3c1dfa20e19328b6f4007e20026c012ccb6a871974ac9f104f962
5
5
  SHA512:
6
- metadata.gz: 18c6d470ce39bafc0008ae23b39e8b207b0ea56caa2db633dd342f7815271013c3d9a7c2c73ac4bc58522b74e09b1712d1e7959a78503ea4b225557970d040a9
7
- data.tar.gz: 8fc8f0748bd0b8ad9446c5780786287ced1eae0713b532ece3ac7e6240258e69a7c363e39c17c5eb3d0e25a59393e8e510ac9ac2029ca7e1841042f984921eeb
6
+ metadata.gz: c2ccba3104f6b64acbffc951182563ac5e80cb5cad153ed9fd8af7b971564006611afbc995ca9970b283438f0cc8661b765845d6fb1c080f61808306f410baa3
7
+ data.tar.gz: c00ae5059fc4c401e4ce1793080759bf1b4ca4619efa9a7118fb5c8b2c6750e93506b5109e8c28a8ab9fbb4854e1ecdb30faf003cd00906047566b42dc072bf7
@@ -190,9 +190,10 @@ class Naver
190
190
  begin
191
191
  @driver.find_element(:name, 'apiKey').click
192
192
  rescue
193
- @driver.close
193
+
194
194
  puts '-[√] 로딩 및 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
195
195
  puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
196
+
196
197
  end
197
198
 
198
199
  Clipboard.copy(captcha_key)
@@ -270,51 +271,140 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
270
271
  #요소가 나타날 때까지 20초 동안 기다립니다.
271
272
  wait.until { @driver.find_element(:xpath, '/html/body') }
272
273
  @driver.find_element(:xpath, '/html/body')
273
- rescue
274
- puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
275
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
276
- @driver.close
274
+ rescue => e
275
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
276
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
277
+ puts e
278
+ @driver.close
279
+ return 0
277
280
  end
278
281
  end
279
282
 
280
283
 
281
284
 
282
285
  sleep(1)
283
- ##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
284
- begin
285
- puts '-[√] 1 캡챠 발생 유무 확인.......'.green
286
- sleep(1)
287
- puts '-[√] 2 캡챠 발생 유무 확인.......'.green
288
- sleep(1)
289
- puts '-[√] 3 캡챠 발생 유무 확인.......'.green
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)
296
- @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
297
- puts '-[√] 캡챠 해제 진행 중 ( 30~60 초 소요됩니다).......'.green
298
- sleep(10)
299
- begin
300
- @driver.find_element(:xpath, '//*[@data-state="error"]').click
301
- puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
302
- puts '-[√] 2 캡챠 해제 실패 !! API번호 포인트를 체크해주세요.......'.red
303
- @driver.quit
304
- rescue
305
- # 타임아웃을 77초로 설정
306
- wait = Selenium::WebDriver::Wait.new(:timeout => 150)
307
- # 요소가 나타날 때까지 100초 동안 기다립니다.
308
- wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
309
- sleep(1)
310
- @driver.find_element(:xpath, '//*[@data-state="solved"]').click
311
- puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
312
- sleep(3)
313
- end
314
- rescue
315
- puts '-[√] 1 캡챠 발생 없음.......'.green
316
- end
317
- ##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
286
+ ##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
287
+
288
+ puts '-[√] 1 캡챠 발생 유무 확인.......'.green
289
+ sleep(1)
290
+ puts '-[√] 2 캡챠 발생 유무 확인.......'.green
291
+ sleep(1)
292
+ puts '-[√] 3 캡챠 발생 유무 확인.......'.green
293
+ sleep(2)
294
+
295
+ begin
296
+ @driver.find_element(:xpath, '//*[@class="amzn-captcha-state-container"]')
297
+ puts '-[] 아임웹 캡챠 확인!! 해제 실행.......'.green
298
+ sleep(1)
299
+ # 타임아웃을 3초로 설정
300
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
301
+ # 요소가 나타날 때까지 3초 동안 기다립니다.
302
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
303
+ sleep(1)
304
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
305
+ puts '-[√] 캡챠 해제 진행 (약 30~60 소요됩니다).......'.green
306
+ sleep(10)
307
+ begin
308
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
309
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
310
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
311
+ @driver.quit
312
+ rescue
313
+ begin
314
+ # 타임아웃을 77초로 설정
315
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
316
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
317
+ #wait.until { @driver.find_element(:xpath, '//*[@class="post_write_wrap"]') }
318
+ wait.until { @driver.find_elements(:xpath, '//*[@id="amzn-captcha-verify-button"]').size == 0 }
319
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
320
+
321
+ sleep(1)
322
+ rescue => e
323
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
324
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
325
+ puts e
326
+ @driver.close
327
+ return 0
328
+ end
329
+ end
330
+ rescue
331
+ begin
332
+ @driver.find_element(:xpath, '//*[@class="zone-name-title h1"]')
333
+ puts '-[√] 클라우드플레어 캡챠 확인!! 해제 실행.......'.green
334
+
335
+ # 타임아웃을 3초로 설정
336
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
337
+ # 요소가 나타날 때까지 30초 동안 기다립니다.
338
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
339
+ sleep(1)
340
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
341
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
342
+ sleep(10)
343
+ begin
344
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
345
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
346
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
347
+ @driver.quit
348
+ rescue
349
+ begin
350
+ # 타임아웃을 77초로 설정
351
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
352
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
353
+ wait.until { @driver.find_elements(:xpath, '//*[@class="spacer"]').size == 0 }
354
+ sleep(1)
355
+
356
+ #@driver.find_element(:xpath, '//*[@data-state="solved"]').click
357
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
358
+ sleep(3)
359
+ rescue => e
360
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
361
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
362
+ puts e
363
+ @driver.close
364
+ return 0
365
+ end
366
+ end
367
+ rescue
368
+ begin
369
+ # 타임아웃을 3초로 설정
370
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
371
+ # 요소가 나타날 때까지 30초 동안 기다립니다.
372
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
373
+ sleep(1)
374
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
375
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
376
+ sleep(10)
377
+ begin
378
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
379
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
380
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
381
+ @driver.quit
382
+ rescue
383
+ begin
384
+ # 타임아웃을 77초로 설정
385
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
386
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
387
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
388
+ sleep(1)
389
+ @driver.find_element(:xpath, '//*[@data-state="solved"]').click
390
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
391
+
392
+ sleep(3)
393
+ rescue => e
394
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
395
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
396
+ puts e
397
+ @driver.close
398
+ return 0
399
+ end
400
+ end
401
+ rescue
402
+ puts '-[√] 캡챠 발생 없음.......'.green
403
+ end
404
+ end
405
+ end
406
+ ##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
407
+
318
408
 
319
409
  # begin
320
410
  # @driver.switch_to.alert.accept
@@ -336,10 +426,12 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
336
426
  #요소가 나타날 때까지 20초 동안 기다립니다.
337
427
  wait.until { @driver.find_element(:xpath, '/html/body') }
338
428
  @driver.find_element(:xpath, '/html/body')
339
- rescue
340
- puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
341
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
342
- @driver.close
429
+ rescue => e
430
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
431
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
432
+ puts e
433
+ @driver.close
434
+ return 0
343
435
  end
344
436
  end
345
437
  begin
@@ -534,10 +626,13 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
534
626
  #요소가 나타날 때까지 20초 동안 기다립니다.
535
627
  wait.until { @driver.find_element(:xpath, '/html/body') }
536
628
  @driver.find_element(:xpath, '/html/body')
537
- rescue
538
- puts '-[√] 회원가입 2차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
539
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
540
- @driver.close
629
+ rescue => e
630
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
631
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
632
+ puts e
633
+ @driver.close
634
+ return 0
635
+
541
636
  end
542
637
  end
543
638
 
@@ -1815,10 +1910,12 @@ end
1815
1910
  #요소가 나타날 때까지 20초 동안 기다립니다.
1816
1911
  wait.until { @driver.find_element(:xpath, '/html/body') }
1817
1912
  @driver.find_element(:xpath, '/html/body')
1818
- rescue
1819
- puts '-[√] 로딩 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
1820
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
1821
- @driver.close
1913
+ rescue => e
1914
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
1915
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
1916
+ puts e
1917
+ @driver.close
1918
+ return 0
1822
1919
  end
1823
1920
 
1824
1921
  begin
@@ -1864,10 +1961,12 @@ login_url = option['login_url'].to_s
1864
1961
  #요소가 나타날 때까지 20초 동안 기다립니다.
1865
1962
  wait.until { @driver.find_element(:xpath, '/html/body') }
1866
1963
  @driver.find_element(:xpath, '/html/body')
1867
- rescue
1868
- puts '-[√] 로그엔 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
1869
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
1870
- @driver.close
1964
+ rescue => e
1965
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
1966
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
1967
+ puts e
1968
+ @driver.close
1969
+ return 0
1871
1970
  end
1872
1971
  end
1873
1972
 
@@ -1875,40 +1974,127 @@ login_url = option['login_url'].to_s
1875
1974
 
1876
1975
  sleep(1)
1877
1976
  ##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
1878
- begin
1977
+
1879
1978
  puts '-[√] 1 캡챠 발생 유무 확인.......'.green
1880
1979
  sleep(1)
1881
1980
  puts '-[√] 2 캡챠 발생 유무 확인.......'.green
1882
1981
  sleep(1)
1883
1982
  puts '-[√] 3 캡챠 발생 유무 확인.......'.green
1884
- sleep(1)
1885
- # 타임아웃을 3초로 설정
1886
- wait = Selenium::WebDriver::Wait.new(:timeout => 3)
1887
- # 요소가 나타날 때까지 30초 동안 기다립니다.
1888
- wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
1889
- sleep(1)
1890
- @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
1891
- puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
1892
- sleep(10)
1893
- begin
1894
- @driver.find_element(:xpath, '//*[@data-state="error"]').click
1895
- puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
1896
- puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
1897
- @driver.quit
1898
- rescue
1899
- # 타임아웃을 77초로 설정
1900
- wait = Selenium::WebDriver::Wait.new(:timeout => 150)
1901
- # 요소가 나타날 때까지 100초 동안 기다립니다.
1902
- wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
1983
+ sleep(2)
1984
+
1985
+ begin
1986
+ @driver.find_element(:xpath, '//*[@class="amzn-captcha-state-container"]')
1987
+ puts '-[] 아임웹 캡챠 확인!! 해제 실행.......'.green
1903
1988
  sleep(1)
1904
- @driver.find_element(:xpath, '//*[@data-state="solved"]').click
1905
- puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
1906
- sleep(3)
1989
+ # 타임아웃을 3초로 설정
1990
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
1991
+ # 요소가 나타날 때까지 3초 동안 기다립니다.
1992
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
1993
+ sleep(1)
1994
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
1995
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
1996
+ sleep(10)
1997
+ begin
1998
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
1999
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
2000
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
2001
+ @driver.quit
2002
+ rescue
2003
+ begin
2004
+ # 타임아웃을 77초로 설정
2005
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
2006
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
2007
+ #wait.until { @driver.find_element(:xpath, '//*[@class="post_write_wrap"]') }
2008
+ wait.until { @driver.find_elements(:xpath, '//*[@id="amzn-captcha-verify-button"]').size == 0 }
2009
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
2010
+
2011
+ sleep(1)
2012
+ rescue => e
2013
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
2014
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2015
+ puts e
2016
+ @driver.close
2017
+ return 0
2018
+ end
1907
2019
  end
1908
- rescue
1909
- puts '-[√] 캡챠 발생 없음.......'.green
1910
- end
1911
- ##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
2020
+ rescue
2021
+ begin
2022
+ @driver.find_element(:xpath, '//*[@class="zone-name-title h1"]')
2023
+ puts '-[√] 클라우드플레어 캡챠 확인!! 해제 실행.......'.green
2024
+
2025
+ # 타임아웃을 3초로 설정
2026
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
2027
+ # 요소가 나타날 때까지 30초 동안 기다립니다.
2028
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
2029
+ sleep(1)
2030
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
2031
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
2032
+ sleep(10)
2033
+ begin
2034
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
2035
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
2036
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
2037
+ @driver.quit
2038
+ rescue
2039
+ begin
2040
+ # 타임아웃을 77초로 설정
2041
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
2042
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
2043
+ wait.until { @driver.find_elements(:xpath, '//*[@class="spacer"]').size == 0 }
2044
+ sleep(1)
2045
+
2046
+ #@driver.find_element(:xpath, '//*[@data-state="solved"]').click
2047
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
2048
+ sleep(3)
2049
+ rescue => e
2050
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
2051
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2052
+ puts e
2053
+ @driver.close
2054
+ return 0
2055
+ end
2056
+ end
2057
+ rescue
2058
+ begin
2059
+ # 타임아웃을 3초로 설정
2060
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
2061
+ # 요소가 나타날 때까지 30초 동안 기다립니다.
2062
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
2063
+ sleep(1)
2064
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
2065
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
2066
+ sleep(10)
2067
+ begin
2068
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
2069
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
2070
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
2071
+ @driver.quit
2072
+ rescue
2073
+ begin
2074
+ # 타임아웃을 77초로 설정
2075
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
2076
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
2077
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
2078
+ sleep(1)
2079
+ @driver.find_element(:xpath, '//*[@data-state="solved"]').click
2080
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
2081
+
2082
+ sleep(3)
2083
+ rescue => e
2084
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
2085
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2086
+ puts e
2087
+ @driver.close
2088
+ return 0
2089
+ end
2090
+ end
2091
+ rescue
2092
+ puts '-[√] 캡챠 발생 없음.......'.green
2093
+ end
2094
+ end
2095
+ end
2096
+ ##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
2097
+
1912
2098
 
1913
2099
  begin
1914
2100
  # 요소 찾기 타임아웃을 10초로 설정
@@ -2495,10 +2681,12 @@ login_url = option['login_url'].to_s
2495
2681
  begin
2496
2682
  @driver.find_element(:xpath, '//*[@name="id"]').send_keys(user_id)
2497
2683
  sleep(3)
2498
- rescue
2499
- #puts '-[√] 로그인 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
2500
- #puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2501
- #@driver.close
2684
+ rescue => e
2685
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
2686
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2687
+ puts e
2688
+ @driver.close
2689
+ return 0
2502
2690
  end
2503
2691
  end
2504
2692
  end
@@ -2743,10 +2931,12 @@ begin
2743
2931
  #요소가 나타날 때까지 20초 동안 기다립니다.
2744
2932
  wait.until { @driver.find_element(:xpath, '/html/body') }
2745
2933
  @driver.find_element(:xpath, '/html/body')
2746
- rescue
2747
- puts '-[√] 출석 체크 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
2748
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2749
- @driver.close
2934
+ rescue => e
2935
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
2936
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2937
+ puts e
2938
+ @driver.close
2939
+ return 0
2750
2940
  end
2751
2941
  end
2752
2942
 
@@ -2804,10 +2994,12 @@ begin
2804
2994
  #요소가 나타날 때까지 20초 동안 기다립니다.
2805
2995
  wait.until { @driver.find_element(:xpath, '/html/body') }
2806
2996
  @driver.find_element(:xpath, '/html/body')
2807
- rescue
2808
- puts '-[√] 출석 체크 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
2809
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2810
- @driver.close
2997
+ rescue => e
2998
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
2999
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
3000
+ puts e
3001
+ @driver.close
3002
+ return 0
2811
3003
  end
2812
3004
  end
2813
3005
 
@@ -2969,49 +3161,147 @@ post_url = option['post_url'].to_s
2969
3161
  #요소가 나타날 때까지 20초 동안 기다립니다.
2970
3162
  wait.until { @driver.find_element(:xpath, '/html/body') }
2971
3163
  @driver.find_element(:xpath, '/html/body')
2972
- rescue
2973
- puts '-[√] 글쓰기 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
2974
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
2975
- @driver.close
3164
+ rescue => e
3165
+ puts '-[√] 회원가입 1차 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
3166
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
3167
+ puts e
3168
+ @driver.close
3169
+ return 0
2976
3170
  end
2977
3171
  end
2978
3172
 
2979
3173
  sleep(1)
2980
- ##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
2981
- begin
2982
- puts '-[√] 1 캡챠 발생 유무 확인.......'.green
2983
- sleep(1)
2984
- puts '-[√] 2 캡챠 발생 유무 확인.......'.green
2985
- sleep(1)
2986
- puts '-[√] 3 캡챠 발생 유무 확인.......'.green
2987
- sleep(1)
2988
- # 타임아웃을 3초로 설정
2989
- wait = Selenium::WebDriver::Wait.new(:timeout => 3)
2990
- # 요소가 나타날 때까지 30초 동안 기다립니다.
2991
- wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
2992
- sleep(1)
2993
- @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
2994
- puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
2995
- sleep(10)
2996
- begin
2997
- @driver.find_element(:xpath, '//*[@data-state="error"]').click
2998
- puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
2999
- puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
3000
- @driver.quit
3001
- rescue
3002
- # 타임아웃을 77초로 설정
3003
- wait = Selenium::WebDriver::Wait.new(:timeout => 150)
3004
- # 요소가 나타날 때까지 100초 동안 기다립니다.
3005
- wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
3006
- sleep(1)
3007
- @driver.find_element(:xpath, '//*[@data-state="solved"]').click
3008
- puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
3009
- sleep(3)
3010
- end
3011
- rescue
3012
- puts '-[] 캡챠 발생 없음.......'.green
3013
- end
3014
- ##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
3174
+
3175
+ ##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
3176
+
3177
+ puts '-[√] 1 캡챠 발생 유무 확인.......'.green
3178
+ sleep(1)
3179
+ puts '-[√] 2 캡챠 발생 유무 확인.......'.green
3180
+ sleep(1)
3181
+ puts '-[√] 3 캡챠 발생 유무 확인.......'.green
3182
+ sleep(2)
3183
+
3184
+ begin
3185
+ @driver.find_element(:xpath, '//*[@class="amzn-captcha-state-container"]')
3186
+ puts '-[√] 아임웹 캡챠 확인!! 해제 실행.......'.green
3187
+ sleep(1)
3188
+ # 타임아웃을 3초로 설정
3189
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
3190
+ # 요소가 나타날 때까지 3초 동안 기다립니다.
3191
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
3192
+ sleep(1)
3193
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
3194
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
3195
+ sleep(10)
3196
+ begin
3197
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
3198
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
3199
+ puts '-[] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
3200
+ @driver.quit
3201
+ rescue
3202
+ begin
3203
+ # 타임아웃을 77초로 설정
3204
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
3205
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
3206
+ #wait.until { @driver.find_element(:xpath, '//*[@class="post_write_wrap"]') }
3207
+ wait.until { @driver.find_elements(:xpath, '//*[@id="amzn-captcha-verify-button"]').size == 0 }
3208
+ puts '-[√] 캡챠 해제 완료 이어서 진행 합니다.......'.green
3209
+
3210
+ sleep(1)
3211
+ rescue => e
3212
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
3213
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
3214
+ puts e
3215
+ @driver.close
3216
+ return 0
3217
+ end
3218
+ end
3219
+ rescue
3220
+ begin
3221
+ @driver.find_element(:xpath, '//*[@class="zone-name-title h1"]')
3222
+ puts '-[√] 클라우드플레어 캡챠 확인!! 해제 실행.......'.green
3223
+
3224
+ # 타임아웃을 3초로 설정
3225
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
3226
+ # 요소가 나타날 때까지 30초 동안 기다립니다.
3227
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
3228
+ sleep(1)
3229
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
3230
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
3231
+ sleep(10)
3232
+ begin
3233
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
3234
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
3235
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
3236
+ @driver.quit
3237
+ rescue
3238
+ begin
3239
+ # 타임아웃을 77초로 설정
3240
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
3241
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
3242
+ wait.until { @driver.find_elements(:xpath, '//*[@class="spacer"]').size == 0 }
3243
+ sleep(1)
3244
+
3245
+ #@driver.find_element(:xpath, '//*[@data-state="solved"]').click
3246
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
3247
+ sleep(3)
3248
+ rescue => e
3249
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
3250
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
3251
+ puts e
3252
+ @driver.close
3253
+ return 0
3254
+ end
3255
+ end
3256
+ rescue
3257
+ begin
3258
+ # 타임아웃을 3초로 설정
3259
+ wait = Selenium::WebDriver::Wait.new(:timeout => 5)
3260
+ # 요소가 나타날 때까지 30초 동안 기다립니다.
3261
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="ready"]') }
3262
+ sleep(1)
3263
+ @driver.find_element(:xpath, '//*[@data-state="ready"]').click #캡챠우회버튼
3264
+ puts '-[√] 캡챠 해제 진행 중 (약 30~60 초 소요됩니다).......'.green
3265
+ sleep(10)
3266
+ begin
3267
+ @driver.find_element(:xpath, '//*[@data-state="error"]').click
3268
+ puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
3269
+ puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
3270
+ @driver.quit
3271
+ rescue
3272
+ begin
3273
+ # 타임아웃을 77초로 설정
3274
+ wait = Selenium::WebDriver::Wait.new(:timeout => 150)
3275
+ # 요소가 나타날 때까지 100초 동안 기다립니다.
3276
+ wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
3277
+ sleep(1)
3278
+ @driver.find_element(:xpath, '//*[@data-state="solved"]').click
3279
+ puts '-[√] 캡챠 해제 완료 → 이어서 진행 합니다.......'.green
3280
+
3281
+ sleep(3)
3282
+ rescue => e
3283
+ puts '-[√] 캡챠 해제 실패(캡챠는 사람이 풀기에 간혹 실수로 실패가 될수있습니다.).......'.red
3284
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
3285
+ puts e
3286
+ @driver.close
3287
+ return 0
3288
+ end
3289
+ end
3290
+ rescue
3291
+ puts '-[√] 캡챠 발생 없음.......'.green
3292
+ end
3293
+ end
3294
+ end
3295
+ ##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
3296
+
3297
+
3298
+
3299
+
3300
+
3301
+
3302
+
3303
+
3304
+
3015
3305
 
3016
3306
 
3017
3307
  begin
@@ -3034,10 +3324,12 @@ post_url = option['post_url'].to_s
3034
3324
  @driver.find_element(:xpath, '/html/body')
3035
3325
  sleep(1)
3036
3326
  #@driver.execute_script("document.body.style.zoom = '0.70'")
3037
- rescue
3038
- puts '-[√] 글쓰기 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
3039
- puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
3040
- @driver.close
3327
+ rescue => e
3328
+ puts '-[√] 글쓰기 페이지 접속 시도 실패 (페이지 로딩 지연 및 접속 불량).......'.red
3329
+ puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
3330
+ puts e
3331
+ @driver.close
3332
+ return 0
3041
3333
  end
3042
3334
  end
3043
3335
 
@@ -4070,12 +4362,14 @@ begin
4070
4362
  rescue
4071
4363
  begin
4072
4364
  @driver.find_element(:xpath, '//*[@for="wr_subject"]').send_keys(title)
4073
- rescue
4365
+ rescue => e
4074
4366
 
4075
-
4367
+
4076
4368
  puts '-[√] 제목 입력 항목 코드 탐색 실패!!.......'.red
4077
4369
  puts '-[√] 다음 작업 준비 중으로 1~60 초 정도 기다려주세요.......'.red
4370
+ puts e
4078
4371
  @driver.close
4372
+ return 0
4079
4373
 
4080
4374
  end
4081
4375
  end
@@ -5088,6 +5382,82 @@ if option['내용사진자동삽입'] == 'true'
5088
5382
  #◀◀◀──────────────────────링크 삽입시
5089
5383
 
5090
5384
  rescue
5385
+ begin
5386
+ #KBoard 이미지 ────────────88888───────────────────────────────────────────────────────────────────────────────────────────────────────────────────
5387
+ @driver.find_element(:xpath, '//*[@data-title="코드보기"]').click #일반 글쓰기로 이동
5388
+ sleep(1)
5389
+ if option['사진위적용'] == 'true'
5390
+ begin
5391
+ @driver.find_element(:xpath, '//*[@class="fr-element fr-view"]').click #일반 글쓰기로 이동
5392
+ rescue
5393
+ begin
5394
+ @driver.find_element(:xpath, '//*[@id="post_body"]').click #일반 글쓰기로 이동
5395
+ rescue
5396
+ end
5397
+ end
5398
+ sleep(1)
5399
+ @driver.action.key_down(:control).key_down(:home).perform
5400
+ @driver.action.key_up(:control).key_up(:home).perform
5401
+ sleep(1)
5402
+ @driver.action.key_down(:enter).key_up(:enter).perform
5403
+ sleep(1)
5404
+ @driver.action.key_down(:up).key_up(:up).perform
5405
+ sleep(2)
5406
+ else
5407
+ end
5408
+ #[옵션1 내용아래 사진 넣기]############
5409
+ if option['사진아래적용'] == 'true'
5410
+ begin
5411
+ @driver.find_element(:xpath, '//*[@class="fr-element fr-view"]').click #일반 글쓰기로 이동
5412
+ rescue
5413
+ begin
5414
+ @driver.find_element(:xpath, '//*[@id="post_body"]').click #일반 글쓰기로 이동
5415
+ rescue
5416
+ end
5417
+ end
5418
+ sleep(1)
5419
+ @driver.action.key_down(:control).key_down(:end).perform
5420
+ @driver.action.key_up(:control).key_up(:end).perform
5421
+ sleep(1)
5422
+ @driver.action.key_down(:enter).key_up(:enter).perform
5423
+ else
5424
+ end
5425
+
5426
+
5427
+ sleep(1)
5428
+ @driver.find_element(:xpath, '//*[@id="insertCustomImage-1"]').click #이미지 버튼 선택
5429
+ sleep(5)
5430
+ Clipboard.copy(image_url_cheng) # 이미지 폴더에서 이미지 선택
5431
+ key_down('ctrl')
5432
+ key_stroke('v')
5433
+ key_up('ctrl')
5434
+ sleep(3)
5435
+ key_stroke('enter')
5436
+ sleep(3)
5437
+
5438
+ sleep(1)
5439
+ #링크 삽입시──────────────────────▶▶▶
5440
+ if option['내용사진링크'] == 'true'
5441
+ @driver.action.key_down(:shift).key_down(:left).perform #이미지 블럭
5442
+ @driver.action.key_up(:shift).key_up(:left).perform #이미지 블럭
5443
+ sleep(2)
5444
+ begin
5445
+ @driver.find_element(:xpath, '//*[@id="imageLink-1"]').click #링크 버튼 선택
5446
+ sleep(1)
5447
+ rescue
5448
+ @driver.find_element(:xpath, '//*[@id="insertLink-1"]').click #링크 버튼 선택
5449
+ sleep(1)
5450
+ end
5451
+ @driver.action.send_keys(img_link2).perform
5452
+ sleep(1)
5453
+ @driver.action.key_down(:enter).key_up(:enter).perform
5454
+ sleep(1)
5455
+
5456
+ else
5457
+ sleep(1)
5458
+ end
5459
+ #◀◀◀──────────────────────링크 삽입시
5460
+
5091
5461
  #파일첨부로 대체 하기─────────────▶▶▶─────────────▶▶▶───────────▶▶▶
5092
5462
  #파일첨부로 대체 하기─────────────▶▶▶─────────────▶▶▶───────────▶▶▶
5093
5463
  #파일첨부로 대체 하기─────────────▶▶▶─────────────▶▶▶───────────▶▶▶
@@ -5320,6 +5690,7 @@ if option['내용사진자동삽입'] == 'true'
5320
5690
  end
5321
5691
  end
5322
5692
  end
5693
+ end
5323
5694
  end
5324
5695
  end
5325
5696
  end
@@ -6411,6 +6782,7 @@ rescue
6411
6782
  ff.write('【등록실패내용:')
6412
6783
  ff.write(error_text)
6413
6784
  ff.write('】')
6785
+ ff.write("\n")
6414
6786
  ff.close()
6415
6787
  puts '-[√] 로그 파일 생성 완료.......'.yellow
6416
6788
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: board_posting_duo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.30
4
+ version: 0.0.32
5
5
  platform: ruby
6
6
  authors:
7
7
  - soonje
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-08-23 00:00:00.000000000 Z
11
+ date: 2024-08-26 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: File to Clipboard gem
14
14
  email: rnjstnswp123@naver.com