board_posting_duo 0.0.31 → 0.0.33

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