board_posting_duo 0.0.8 → 0.0.10
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 +554 -99
- metadata +2 -2
data/lib/board_posting_duo.rb
CHANGED
@@ -60,6 +60,7 @@ class Naver
|
|
60
60
|
options.add_argument('--disable-translate')
|
61
61
|
options.add_argument('--disable-extensions-file-access-check')
|
62
62
|
options.add_argument('--disable-impl-side-painting')
|
63
|
+
|
63
64
|
|
64
65
|
@driver = Selenium::WebDriver.for(:chrome, capabilities: options)
|
65
66
|
rescue
|
@@ -142,17 +143,16 @@ class Naver
|
|
142
143
|
@captcha_key = captcha_key
|
143
144
|
|
144
145
|
@driver.get('chrome-extension://ifibfemgeogfhoebkmokieepdoobkbpo/options/options.html')
|
145
|
-
|
146
|
-
|
146
|
+
sleep(1)
|
147
147
|
begin
|
148
148
|
@driver.switch_to.window(@driver.window_handles[1])
|
149
|
-
|
149
|
+
sleep(1)
|
150
150
|
@driver.close
|
151
151
|
rescue
|
152
152
|
@driver.switch_to.window(@driver.window_handles[0])
|
153
153
|
end
|
154
|
-
|
155
|
-
|
154
|
+
sleep(1)
|
155
|
+
|
156
156
|
|
157
157
|
####################탭나누기 수정중######################################
|
158
158
|
begin
|
@@ -204,7 +204,7 @@ class Naver
|
|
204
204
|
|
205
205
|
rescue
|
206
206
|
begin
|
207
|
-
@driver.quit
|
207
|
+
@driver.quit
|
208
208
|
|
209
209
|
puts '-[√] 로딩 및 코드인식 실패등 기타 이유로 다음 게시판 작업으로 이동합니다.......'.red
|
210
210
|
puts '-[√] 다음 작업 준비로 약 1초~60초 내외 시간이 소요됩니다.......'.red
|
@@ -264,7 +264,7 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
264
264
|
@driver.find_element(:xpath, '/html/body')
|
265
265
|
rescue
|
266
266
|
begin
|
267
|
-
|
267
|
+
@driver.get(signup_url)
|
268
268
|
# 요소 찾기 타임아웃을 10초로 설정
|
269
269
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
270
270
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -300,10 +300,10 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
300
300
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
301
301
|
puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
302
302
|
puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
303
|
-
@driver.quit
|
303
|
+
@driver.quit
|
304
304
|
rescue
|
305
305
|
# 타임아웃을 77초로 설정
|
306
|
-
wait = Selenium::WebDriver::Wait.new(:timeout =>
|
306
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 150)
|
307
307
|
# 요소가 나타날 때까지 100초 동안 기다립니다.
|
308
308
|
wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
|
309
309
|
sleep(1)
|
@@ -330,7 +330,7 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
330
330
|
@driver.find_element(:xpath, '/html/body')
|
331
331
|
rescue
|
332
332
|
begin
|
333
|
-
|
333
|
+
@driver.get(signup_url)
|
334
334
|
# 요소 찾기 타임아웃을 10초로 설정
|
335
335
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
336
336
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -526,7 +526,9 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
526
526
|
@driver.find_element(:xpath, '/html/body')
|
527
527
|
rescue
|
528
528
|
begin
|
529
|
-
|
529
|
+
new_signup_url = @driver.current_url #현제 페이지 URL 추출
|
530
|
+
sleep(1)
|
531
|
+
@driver.get(new_signup_url)
|
530
532
|
# 요소 찾기 타임아웃을 10초로 설정
|
531
533
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
532
534
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -1126,16 +1128,26 @@ def update(user_id, user_pw, title, content, option, post_url, signup_url, login
|
|
1126
1128
|
|
1127
1129
|
|
1128
1130
|
|
1129
|
-
|
1130
|
-
|
1131
|
+
|
1132
|
+
|
1131
1133
|
|
1132
1134
|
sleep(1)
|
1135
|
+
|
1133
1136
|
##캡챠 이미지,2캡챠,,등등 코드 부분─────────────────────────────────────────────────────────────────────>
|
1134
1137
|
puts '-[√] 캡챠 유형 탐색.......'.green
|
1135
1138
|
begin
|
1136
1139
|
@driver.switch_to.default_content()
|
1137
1140
|
@driver.find_element(:xpath, '//*[@id="mb_kcaptcha"]').click
|
1138
|
-
|
1141
|
+
sleep(1)
|
1142
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1143
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1144
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1145
|
+
sleep(2)
|
1146
|
+
@driver.manage.window.maximize
|
1147
|
+
sleep(2)
|
1148
|
+
mouse_move_percentage(0.3,0.02)
|
1149
|
+
sleep(0.5)
|
1150
|
+
left_click
|
1139
1151
|
sleep(1)
|
1140
1152
|
el = @driver.find_element(:xpath, '//*[@id="mb_kcaptcha"]')
|
1141
1153
|
@driver.action.context_click(el).perform
|
@@ -1144,14 +1156,23 @@ begin
|
|
1144
1156
|
#key_down('shift')
|
1145
1157
|
#key_stroke('m')
|
1146
1158
|
#key_up('shift')
|
1147
|
-
sleep(
|
1159
|
+
sleep(2)
|
1148
1160
|
puts '-[√] 캡챠 코드 타겟 완료1.......'.blue
|
1149
1161
|
rescue
|
1150
1162
|
begin
|
1151
1163
|
@driver.switch_to.default_content()
|
1152
1164
|
@driver.find_element(:xpath, '//*[@alt="자동등록방지"]').click
|
1153
|
-
|
1154
1165
|
sleep(1)
|
1166
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1167
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1168
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1169
|
+
sleep(2)
|
1170
|
+
@driver.manage.window.maximize
|
1171
|
+
sleep(2)
|
1172
|
+
mouse_move_percentage(0.3,0.02)
|
1173
|
+
sleep(0.5)
|
1174
|
+
left_click
|
1175
|
+
sleep(2)
|
1155
1176
|
el = @driver.find_element(:xpath, '//*[@alt="자동등록방지"]')
|
1156
1177
|
@driver.action.context_click(el).perform
|
1157
1178
|
sleep(1)
|
@@ -1165,8 +1186,17 @@ rescue
|
|
1165
1186
|
begin
|
1166
1187
|
@driver.switch_to.default_content()
|
1167
1188
|
@driver.find_element(:xpath, '//*[@id="captcha_img"]').click
|
1168
|
-
|
1169
1189
|
sleep(1)
|
1190
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1191
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1192
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1193
|
+
sleep(2)
|
1194
|
+
@driver.manage.window.maximize
|
1195
|
+
sleep(2)
|
1196
|
+
mouse_move_percentage(0.3,0.02)
|
1197
|
+
sleep(0.5)
|
1198
|
+
left_click
|
1199
|
+
sleep(2)
|
1170
1200
|
el = @driver.find_element(:xpath, '//*[@id="captcha_img"]')
|
1171
1201
|
@driver.action.context_click(el).perform
|
1172
1202
|
sleep(1)
|
@@ -1180,8 +1210,17 @@ rescue
|
|
1180
1210
|
begin
|
1181
1211
|
@driver.switch_to.default_content()
|
1182
1212
|
@driver.find_element(:xpath, '//*[@id="kcaptcha"]').click
|
1183
|
-
|
1184
1213
|
sleep(1)
|
1214
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1215
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1216
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1217
|
+
sleep(2)
|
1218
|
+
@driver.manage.window.maximize
|
1219
|
+
sleep(2)
|
1220
|
+
mouse_move_percentage(0.3,0.02)
|
1221
|
+
sleep(0.5)
|
1222
|
+
left_click
|
1223
|
+
sleep(2)
|
1185
1224
|
el = @driver.find_element(:xpath, '//*[@id="kcaptcha"]')
|
1186
1225
|
@driver.action.context_click(el).perform
|
1187
1226
|
sleep(1)
|
@@ -1195,8 +1234,17 @@ rescue
|
|
1195
1234
|
begin
|
1196
1235
|
@driver.switch_to.default_content()
|
1197
1236
|
@driver.find_element(:xpath, '//*[@for="kboard-input-captcha"]').click
|
1198
|
-
|
1199
1237
|
sleep(1)
|
1238
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1239
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1240
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1241
|
+
sleep(2)
|
1242
|
+
@driver.manage.window.maximize
|
1243
|
+
sleep(2)
|
1244
|
+
mouse_move_percentage(0.3,0.02)
|
1245
|
+
sleep(0.5)
|
1246
|
+
left_click
|
1247
|
+
sleep(2)
|
1200
1248
|
el = @driver.find_element(:xpath, '//*[@for="kboard-input-captcha"]')
|
1201
1249
|
@driver.action.context_click(el).perform
|
1202
1250
|
sleep(1)
|
@@ -1211,8 +1259,17 @@ rescue
|
|
1211
1259
|
@driver.switch_to.default_content()
|
1212
1260
|
sleep(1)
|
1213
1261
|
@driver.find_element(:xpath, '//*[@id="captcha_Write"]').click
|
1214
|
-
|
1215
1262
|
sleep(1)
|
1263
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1264
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1265
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1266
|
+
sleep(2)
|
1267
|
+
@driver.manage.window.maximize
|
1268
|
+
sleep(2)
|
1269
|
+
mouse_move_percentage(0.3,0.02)
|
1270
|
+
sleep(0.5)
|
1271
|
+
left_click
|
1272
|
+
sleep(2)
|
1216
1273
|
el = @driver.find_element(:xpath, '//*[@id="captcha_Write"]')
|
1217
1274
|
@driver.action.context_click(el).perform
|
1218
1275
|
sleep(1)
|
@@ -1226,11 +1283,20 @@ rescue
|
|
1226
1283
|
begin
|
1227
1284
|
@driver.switch_to.default_content()
|
1228
1285
|
@driver.find_element(:xpath, '//*[@image-reader="in-progress"]').click
|
1229
|
-
|
1286
|
+
sleep(1)
|
1287
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1288
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1289
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1290
|
+
sleep(2)
|
1291
|
+
@driver.manage.window.maximize
|
1292
|
+
sleep(2)
|
1293
|
+
mouse_move_percentage(0.3,0.02)
|
1294
|
+
sleep(0.5)
|
1295
|
+
left_click
|
1230
1296
|
sleep(1)
|
1231
1297
|
el = @driver.find_element(:xpath, '//*[@image-reader="in-progress"]')
|
1232
1298
|
@driver.action.context_click(el).perform
|
1233
|
-
sleep(
|
1299
|
+
sleep(2)
|
1234
1300
|
@driver.action.key_down(:shift).key_stroke('m').key_up(:shift).perform #컨트롤+a
|
1235
1301
|
#key_down('shift')
|
1236
1302
|
#key_stroke('m')
|
@@ -1241,8 +1307,17 @@ rescue
|
|
1241
1307
|
begin
|
1242
1308
|
@driver.switch_to.default_content()
|
1243
1309
|
@driver.find_element(:xpath, '//*[@id="spamauth"]').click
|
1244
|
-
|
1245
1310
|
sleep(1)
|
1311
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1312
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1313
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1314
|
+
sleep(2)
|
1315
|
+
@driver.manage.window.maximize
|
1316
|
+
sleep(2)
|
1317
|
+
mouse_move_percentage(0.3,0.02)
|
1318
|
+
sleep(0.5)
|
1319
|
+
left_click
|
1320
|
+
sleep(2)
|
1246
1321
|
el = @driver.find_element(:xpath, '//*[@id="spamauth"]')
|
1247
1322
|
@driver.action.context_click(el).perform
|
1248
1323
|
sleep(1)
|
@@ -1256,8 +1331,17 @@ rescue
|
|
1256
1331
|
begin
|
1257
1332
|
@driver.switch_to.default_content()
|
1258
1333
|
@driver.find_element(:xpath, '//*[@id="norobot_img"]').click
|
1259
|
-
|
1260
1334
|
sleep(1)
|
1335
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
1336
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
1337
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
1338
|
+
sleep(2)
|
1339
|
+
@driver.manage.window.maximize
|
1340
|
+
sleep(2)
|
1341
|
+
mouse_move_percentage(0.3,0.02)
|
1342
|
+
sleep(0.5)
|
1343
|
+
left_click
|
1344
|
+
sleep(2)
|
1261
1345
|
el = @driver.find_element(:xpath, '//*[@id="norobot_img"]')
|
1262
1346
|
@driver.action.context_click(el).perform
|
1263
1347
|
sleep(1)
|
@@ -1279,13 +1363,17 @@ rescue
|
|
1279
1363
|
end
|
1280
1364
|
end
|
1281
1365
|
##캡챠 이미지,2캡챠,,등등 코드 부분─────────────────────────────────────────────────────────────────────>
|
1282
|
-
|
1283
|
-
sleep(1)
|
1366
|
+
sleep(1)
|
1284
1367
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
1285
1368
|
puts '-[√] 캡챠 입력 항목 탐색.......'.green
|
1286
1369
|
begin
|
1287
1370
|
@driver.find_element(:xpath, '//*[@name="captcha_key"]').click
|
1371
|
+
|
1288
1372
|
sleep(1)
|
1373
|
+
mouse_move_percentage(0.3,0.02)
|
1374
|
+
sleep(0.5)
|
1375
|
+
left_click
|
1376
|
+
sleep(2)
|
1289
1377
|
el = @driver.find_element(:xpath, '//*[@name="captcha_key"]')
|
1290
1378
|
@driver.action.context_click(el).perform
|
1291
1379
|
sleep(1)
|
@@ -1319,7 +1407,12 @@ begin
|
|
1319
1407
|
rescue
|
1320
1408
|
begin
|
1321
1409
|
@driver.find_element(:xpath, '//*[@id="captcha_key"]').click
|
1410
|
+
|
1322
1411
|
sleep(1)
|
1412
|
+
mouse_move_percentage(0.3,0.02)
|
1413
|
+
sleep(0.5)
|
1414
|
+
left_click
|
1415
|
+
sleep(2)
|
1323
1416
|
el = @driver.find_element(:xpath, '//*[@id="captcha_key"]')
|
1324
1417
|
@driver.action.context_click(el).perform
|
1325
1418
|
|
@@ -1353,7 +1446,12 @@ rescue
|
|
1353
1446
|
rescue
|
1354
1447
|
begin
|
1355
1448
|
@driver.find_element(:xpath, '=//*[@id="code"]').click
|
1449
|
+
|
1356
1450
|
sleep(1)
|
1451
|
+
mouse_move_percentage(0.3,0.02)
|
1452
|
+
sleep(0.5)
|
1453
|
+
left_click
|
1454
|
+
sleep(2)
|
1357
1455
|
el = @driver.find_element(:xpath, '//*[@id="code"]')
|
1358
1456
|
@driver.action.context_click(el).perform
|
1359
1457
|
|
@@ -1387,7 +1485,12 @@ rescue
|
|
1387
1485
|
rescue
|
1388
1486
|
begin
|
1389
1487
|
@driver.find_element(:xpath, '//*[@id="kboard-input-captcha"]').click
|
1488
|
+
|
1390
1489
|
sleep(1)
|
1490
|
+
mouse_move_percentage(0.3,0.02)
|
1491
|
+
sleep(0.5)
|
1492
|
+
left_click
|
1493
|
+
sleep(2)
|
1391
1494
|
el = @driver.find_element(:xpath, '//*[@id="kboard-input-captcha"]')
|
1392
1495
|
@driver.action.context_click(el).perform
|
1393
1496
|
|
@@ -1421,7 +1524,12 @@ rescue
|
|
1421
1524
|
rescue
|
1422
1525
|
begin
|
1423
1526
|
@driver.find_element(:xpath, '//*[@fw-label="보안문자"]').click
|
1527
|
+
|
1424
1528
|
sleep(1)
|
1529
|
+
mouse_move_percentage(0.3,0.02)
|
1530
|
+
sleep(0.5)
|
1531
|
+
left_click
|
1532
|
+
sleep(2)
|
1425
1533
|
el = @driver.find_element(:xpath, '//*[@fw-label="보안문자"]')
|
1426
1534
|
@driver.action.context_click(el).perform
|
1427
1535
|
|
@@ -1455,7 +1563,12 @@ rescue
|
|
1455
1563
|
rescue
|
1456
1564
|
begin
|
1457
1565
|
@driver.find_element(:xpath, '//*[@name="captcha"]').click
|
1566
|
+
|
1458
1567
|
sleep(1)
|
1568
|
+
mouse_move_percentage(0.3,0.02)
|
1569
|
+
sleep(0.5)
|
1570
|
+
left_click
|
1571
|
+
sleep(2)
|
1459
1572
|
el = @driver.find_element(:xpath, '//*[@name="captcha"]')
|
1460
1573
|
@driver.action.context_click(el).perform
|
1461
1574
|
|
@@ -1489,7 +1602,12 @@ rescue
|
|
1489
1602
|
rescue
|
1490
1603
|
begin
|
1491
1604
|
@driver.find_element(:xpath, '//*[@id="spamCode"]').click
|
1605
|
+
|
1492
1606
|
sleep(1)
|
1607
|
+
mouse_move_percentage(0.3,0.02)
|
1608
|
+
sleep(0.5)
|
1609
|
+
left_click
|
1610
|
+
sleep(2)
|
1493
1611
|
el = @driver.find_element(:xpath, '//*[@id="spamCode"]')
|
1494
1612
|
@driver.action.context_click(el).perform
|
1495
1613
|
|
@@ -1523,7 +1641,12 @@ rescue
|
|
1523
1641
|
rescue
|
1524
1642
|
begin
|
1525
1643
|
@driver.find_element(:xpath, '//*[@id="norobot_code"]').click
|
1644
|
+
|
1526
1645
|
sleep(1)
|
1646
|
+
mouse_move_percentage(0.3,0.02)
|
1647
|
+
sleep(0.5)
|
1648
|
+
left_click
|
1649
|
+
sleep(2)
|
1527
1650
|
el = @driver.find_element(:xpath, '//*[@id="norobot_code"]')
|
1528
1651
|
@driver.action.context_click(el).perform
|
1529
1652
|
|
@@ -1558,7 +1681,12 @@ rescue
|
|
1558
1681
|
@driver.switch_to.default_content()
|
1559
1682
|
sleep(1)
|
1560
1683
|
@driver.find_element(:xpath, '//*[@name="kcaptcha_code"]').click
|
1684
|
+
|
1561
1685
|
sleep(1)
|
1686
|
+
mouse_move_percentage(0.3,0.02)
|
1687
|
+
sleep(0.5)
|
1688
|
+
left_click
|
1689
|
+
sleep(2)
|
1562
1690
|
el = @driver.find_element(:xpath, '//*[@name="kcaptcha_code"]')
|
1563
1691
|
@driver.action.context_click(el).perform
|
1564
1692
|
|
@@ -1605,7 +1733,6 @@ end
|
|
1605
1733
|
|
1606
1734
|
|
1607
1735
|
|
1608
|
-
|
1609
1736
|
sleep(1)
|
1610
1737
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
1611
1738
|
begin
|
@@ -1622,10 +1749,10 @@ sleep(10)
|
|
1622
1749
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
1623
1750
|
puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
1624
1751
|
puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
1625
|
-
@driver.quit
|
1752
|
+
@driver.quit
|
1626
1753
|
rescue
|
1627
1754
|
# 타임아웃을 77초로 설정
|
1628
|
-
wait = Selenium::WebDriver::Wait.new(:timeout =>
|
1755
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 150)
|
1629
1756
|
# 요소가 나타날 때까지 100초 동안 기다립니다.
|
1630
1757
|
wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
|
1631
1758
|
sleep(1)
|
@@ -1725,7 +1852,9 @@ login_url = option['login_url'].to_s
|
|
1725
1852
|
@driver.find_element(:xpath, '/html/body')
|
1726
1853
|
rescue
|
1727
1854
|
begin
|
1728
|
-
|
1855
|
+
new_login__url = @driver.current_url #현제 페이지 URL 추출
|
1856
|
+
sleep(1)
|
1857
|
+
@driver.get(new_login__url)
|
1729
1858
|
# 요소 찾기 타임아웃을 10초로 설정
|
1730
1859
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
1731
1860
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -1761,10 +1890,10 @@ login_url = option['login_url'].to_s
|
|
1761
1890
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
1762
1891
|
puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
1763
1892
|
puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
1764
|
-
@driver.quit
|
1893
|
+
@driver.quit
|
1765
1894
|
rescue
|
1766
1895
|
# 타임아웃을 77초로 설정
|
1767
|
-
wait = Selenium::WebDriver::Wait.new(:timeout =>
|
1896
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 150)
|
1768
1897
|
# 요소가 나타날 때까지 100초 동안 기다립니다.
|
1769
1898
|
wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
|
1770
1899
|
sleep(1)
|
@@ -1785,7 +1914,9 @@ login_url = option['login_url'].to_s
|
|
1785
1914
|
@driver.find_element(:xpath, '/html/body')
|
1786
1915
|
rescue
|
1787
1916
|
begin
|
1788
|
-
|
1917
|
+
new_login__url = @driver.current_url #현제 페이지 URL 추출
|
1918
|
+
sleep(1)
|
1919
|
+
@driver.get(new_login__url)
|
1789
1920
|
# 요소 찾기 타임아웃을 10초로 설정
|
1790
1921
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
1791
1922
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -2600,7 +2731,9 @@ begin
|
|
2600
2731
|
@driver.find_element(:xpath, '/html/body')
|
2601
2732
|
rescue
|
2602
2733
|
begin
|
2603
|
-
|
2734
|
+
new_check_url = @driver.current_url #현제 페이지 URL 추출
|
2735
|
+
sleep(1)
|
2736
|
+
@driver.get(new_check_url)
|
2604
2737
|
# 요소 찾기 타임아웃을 10초로 설정
|
2605
2738
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
2606
2739
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -2635,10 +2768,10 @@ begin
|
|
2635
2768
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
2636
2769
|
puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
2637
2770
|
puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
2638
|
-
@driver.quit
|
2771
|
+
@driver.quit
|
2639
2772
|
rescue
|
2640
2773
|
# 타임아웃을 77초로 설정
|
2641
|
-
wait = Selenium::WebDriver::Wait.new(:timeout =>
|
2774
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 150)
|
2642
2775
|
# 요소가 나타날 때까지 100초 동안 기다립니다.
|
2643
2776
|
wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
|
2644
2777
|
sleep(1)
|
@@ -2659,7 +2792,9 @@ begin
|
|
2659
2792
|
@driver.find_element(:xpath, '/html/body')
|
2660
2793
|
rescue
|
2661
2794
|
begin
|
2662
|
-
|
2795
|
+
new_check_url = @driver.current_url #현제 페이지 URL 추출
|
2796
|
+
sleep(1)
|
2797
|
+
@driver.get(new_check_url)
|
2663
2798
|
# 요소 찾기 타임아웃을 10초로 설정
|
2664
2799
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
2665
2800
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -2807,8 +2942,7 @@ post_url = option['post_url'].to_s
|
|
2807
2942
|
else
|
2808
2943
|
puts '-[√] 글쓰기 페이지 URL 이동.......'.magenta
|
2809
2944
|
@driver.get(post_url)
|
2810
|
-
|
2811
|
-
|
2945
|
+
|
2812
2946
|
begin
|
2813
2947
|
sleep(1)
|
2814
2948
|
@driver.switch_to.alert.accept
|
@@ -2823,7 +2957,9 @@ post_url = option['post_url'].to_s
|
|
2823
2957
|
@driver.find_element(:xpath, '/html/body')
|
2824
2958
|
rescue
|
2825
2959
|
begin
|
2826
|
-
|
2960
|
+
new_post_url = @driver.current_url #현제 페이지 URL 추출
|
2961
|
+
sleep(1)
|
2962
|
+
@driver.get(new_post_url)
|
2827
2963
|
# 요소 찾기 타임아웃을 10초로 설정
|
2828
2964
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
2829
2965
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -2857,10 +2993,10 @@ post_url = option['post_url'].to_s
|
|
2857
2993
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
2858
2994
|
puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
2859
2995
|
puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
2860
|
-
@driver.quit
|
2996
|
+
@driver.quit
|
2861
2997
|
rescue
|
2862
2998
|
# 타임아웃을 77초로 설정
|
2863
|
-
wait = Selenium::WebDriver::Wait.new(:timeout =>
|
2999
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 150)
|
2864
3000
|
# 요소가 나타날 때까지 100초 동안 기다립니다.
|
2865
3001
|
wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
|
2866
3002
|
sleep(1)
|
@@ -2884,7 +3020,9 @@ post_url = option['post_url'].to_s
|
|
2884
3020
|
#@driver.execute_script("document.body.style.zoom = '0.70'")
|
2885
3021
|
rescue
|
2886
3022
|
begin
|
2887
|
-
|
3023
|
+
new_post_url = @driver.current_url #현제 페이지 URL 추출
|
3024
|
+
sleep(1)
|
3025
|
+
@driver.get(new_post_url)
|
2888
3026
|
# 요소 찾기 타임아웃을 10초로 설정
|
2889
3027
|
wait = Selenium::WebDriver::Wait.new(:timeout => 20)
|
2890
3028
|
#요소가 나타날 때까지 20초 동안 기다립니다.
|
@@ -2899,6 +3037,34 @@ post_url = option['post_url'].to_s
|
|
2899
3037
|
end
|
2900
3038
|
end
|
2901
3039
|
|
3040
|
+
|
3041
|
+
=begin
|
3042
|
+
begin
|
3043
|
+
puts '-[√] 히든 요소 감지(코드 숨김 처리가있는지 체크).......'.cyan
|
3044
|
+
# 요소 찾기 타임아웃을 2초로 설정
|
3045
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 2)
|
3046
|
+
#요소가 나타날 때까지 2초 동안 기다립니다.
|
3047
|
+
wait.until { @driver.find_element(:xpath, '//*[@aria-hidden="false"]') }
|
3048
|
+
@driver.find_element(:xpath, '//*[@aria-hidden="false"]')
|
3049
|
+
puts '-[√] 히든 요소 감지 됨 히든 요소 강제 제거 처리.......'.cyan
|
3050
|
+
@driver.get(post_url)
|
3051
|
+
sleep(1)
|
3052
|
+
ttm = @driver.find_element(:xpath, '//*[@aria-hidden="false"]')
|
3053
|
+
# aria-hidden 요소를 제거 합니다
|
3054
|
+
@driver.execute_script('arguments[0].removeAttribute("aria-hidden")', ttm)
|
3055
|
+
|
3056
|
+
|
3057
|
+
|
3058
|
+
rescue
|
3059
|
+
|
3060
|
+
puts '-[√] 히든 요소 감지 없음.......'.cyan
|
3061
|
+
end
|
3062
|
+
=end
|
3063
|
+
|
3064
|
+
|
3065
|
+
|
3066
|
+
|
3067
|
+
|
2902
3068
|
|
2903
3069
|
end
|
2904
3070
|
|
@@ -3343,7 +3509,16 @@ post_url = option['post_url'].to_s
|
|
3343
3509
|
begin
|
3344
3510
|
@driver.find_element(:xpath, '//*[@id="hd_pops_5"]/div[2]/button[1]').click
|
3345
3511
|
rescue
|
3346
|
-
|
3512
|
+
begin
|
3513
|
+
@driver.switch_to.frame(@driver.find_element(:xpath, '//*[@id="aswift_1"]'))
|
3514
|
+
sleep(1)
|
3515
|
+
@driver.find_element(:xpath, '//*[@id="dismiss-button"]').click
|
3516
|
+
sleep(1)
|
3517
|
+
@driver.switch_to.default_content
|
3518
|
+
rescue
|
3519
|
+
puts '.......'.yellow
|
3520
|
+
|
3521
|
+
end
|
3347
3522
|
|
3348
3523
|
end
|
3349
3524
|
|
@@ -3842,7 +4017,7 @@ begin
|
|
3842
4017
|
puts '-[√] 제목 입력 필드 탐색 시작.......'.yellow
|
3843
4018
|
sleep(1)
|
3844
4019
|
begin
|
3845
|
-
|
4020
|
+
@driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys(title)
|
3846
4021
|
rescue
|
3847
4022
|
begin
|
3848
4023
|
@driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys(title)
|
@@ -3892,20 +4067,12 @@ begin
|
|
3892
4067
|
begin
|
3893
4068
|
@driver.find_element(:xpath, '//*[@for="wr_subject"]').send_keys(title)
|
3894
4069
|
rescue
|
3895
|
-
|
3896
|
-
|
3897
|
-
@driver.find_element(:xpath, '/html/body/div[4]/div/div[2]/section/form/div[2]/div/input').click
|
3898
|
-
|
3899
|
-
@driver.action.send_keys(title).perform
|
3900
|
-
|
3901
|
-
|
3902
|
-
rescue
|
4070
|
+
|
4071
|
+
|
3903
4072
|
puts '-[√] 제목 입력 항목 코드 탐색 실패!!.......'.red
|
3904
4073
|
puts '-[√] 다음 작업 준비 중으로 1~60 초 정도 기다려주세요.......'.red
|
3905
4074
|
@driver.close
|
3906
|
-
|
3907
|
-
end
|
3908
|
-
|
4075
|
+
|
3909
4076
|
end
|
3910
4077
|
end
|
3911
4078
|
end
|
@@ -3936,78 +4103,109 @@ begin
|
|
3936
4103
|
begin
|
3937
4104
|
#아이프레임에서 코드 선택
|
3938
4105
|
@driver.switch_to.frame(@driver.find_element(:xpath, '//*[@scrolling="no"]'))
|
4106
|
+
|
3939
4107
|
@driver.find_element(:xpath, '//*[@class="se2_to_html"]').click
|
3940
4108
|
#아이프레임 나오기
|
3941
4109
|
@driver.switch_to.default_content()
|
3942
4110
|
rescue
|
3943
4111
|
begin
|
4112
|
+
|
3944
4113
|
@driver.find_element(:xpath, '//*[@title="HTML 편집"]').click
|
4114
|
+
|
3945
4115
|
rescue
|
3946
4116
|
begin
|
4117
|
+
|
3947
4118
|
@driver.find_element(:xpath, '//*[@id="html"]').click
|
3948
4119
|
rescue
|
3949
4120
|
begin
|
3950
|
-
|
3951
|
-
sleep(1)
|
4121
|
+
|
3952
4122
|
@driver.find_element(:xpath, '//*[@title="코드보기"]').click
|
3953
4123
|
rescue
|
3954
4124
|
begin
|
4125
|
+
|
3955
4126
|
@driver.find_element(:xpath, '//*[@id="chk_html"]').click
|
3956
4127
|
rescue
|
3957
4128
|
begin
|
4129
|
+
|
3958
4130
|
@driver.find_element(:xpath, '//*[@id="kboard_content-html"]').click
|
3959
4131
|
rescue
|
3960
4132
|
begin
|
4133
|
+
|
3961
4134
|
@driver.find_element(:xpath, '//*[@alt="코드"]').click
|
3962
4135
|
rescue
|
3963
4136
|
begin
|
4137
|
+
|
3964
4138
|
@driver.find_element(:xpath, '//*[@title="HTML 편집기"]').click
|
3965
4139
|
rescue
|
3966
4140
|
begin
|
4141
|
+
|
3967
4142
|
@driver.find_element(:xpath, '//*[@name="tag"]').click
|
3968
4143
|
rescue
|
3969
4144
|
begin
|
4145
|
+
|
3970
4146
|
@driver.find_element(:xpath, '//*[@name="html"]').click
|
3971
4147
|
rescue
|
3972
4148
|
begin
|
4149
|
+
|
3973
4150
|
@driver.find_element(:xpath, '//*[@id="html"]').click
|
3974
4151
|
rescue
|
3975
4152
|
begin
|
4153
|
+
|
3976
4154
|
@driver.find_element(:xpath, '//*[@data-wp-editor-id="kboard_content"]').click
|
3977
4155
|
rescue
|
3978
4156
|
begin
|
4157
|
+
|
3979
4158
|
@driver.find_element(:xpath, '//*[@title="소스"]').click
|
3980
4159
|
rescue
|
3981
4160
|
begin
|
4161
|
+
|
3982
4162
|
@driver.find_element(:xpath, '//*[@class="note-btn btn-codeview note-codeview-keep active"]').click
|
3983
4163
|
rescue
|
3984
4164
|
begin
|
4165
|
+
|
3985
4166
|
@driver.find_element(:xpath, '//*[@for="html"]').click
|
3986
4167
|
rescue
|
3987
4168
|
begin
|
4169
|
+
|
3988
4170
|
@driver.find_element(:xpath, '//*[@onclick="html_auto_br(this);"]').click
|
3989
4171
|
rescue
|
3990
4172
|
begin
|
4173
|
+
|
3991
4174
|
@driver.find_element(:xpath, '//*[@data-title="코드보기"]').click
|
3992
4175
|
rescue
|
3993
4176
|
begin
|
4177
|
+
|
3994
4178
|
@driver.find_element(:xpath, '//*[@title="에디터 타입"]').click
|
3995
4179
|
rescue
|
3996
4180
|
begin
|
4181
|
+
|
3997
4182
|
@driver.find_element(:xpath, '//*[@aria-label="코드 보기"]').click
|
3998
4183
|
rescue
|
3999
4184
|
begin
|
4185
|
+
|
4000
4186
|
@driver.find_element(:xpath, '//*[@id="fwrite"]/ul/li[2]/div/div/div').click
|
4001
4187
|
rescue
|
4002
4188
|
begin
|
4189
|
+
|
4003
4190
|
@driver.find_element(:xpath, '//*[@data-cke-tooltip-text="소스"]').click
|
4004
4191
|
rescue
|
4005
4192
|
begin
|
4006
|
-
|
4007
|
-
sleep(1)
|
4193
|
+
|
4008
4194
|
@driver.find_element(:xpath, '//*[@id="html-1"]').click
|
4009
4195
|
rescue
|
4010
|
-
|
4196
|
+
begin
|
4197
|
+
|
4198
|
+
@driver.find_element(:xpath, '//*[@id="html-1"]').click
|
4199
|
+
rescue
|
4200
|
+
begin
|
4201
|
+
|
4202
|
+
@driver.find_element(:xpath, '//*[@class="fas fa-code"]').click
|
4203
|
+
rescue
|
4204
|
+
puts '-[√] HTML 코드 탐색 실패.......'.red
|
4205
|
+
|
4206
|
+
end
|
4207
|
+
|
4208
|
+
end
|
4011
4209
|
|
4012
4210
|
end
|
4013
4211
|
|
@@ -4218,7 +4416,19 @@ rescue
|
|
4218
4416
|
sleep(1)
|
4219
4417
|
puts '내용 항목 코드 타겟 29.......'.red
|
4220
4418
|
rescue
|
4221
|
-
|
4419
|
+
begin
|
4420
|
+
@driver.find_element(:xpath, '//*[@id="post_body"]/div[1]/div').click
|
4421
|
+
sleep(1)
|
4422
|
+
puts '내용 항목 코드 타겟 30.......'.red
|
4423
|
+
rescue
|
4424
|
+
begin
|
4425
|
+
@driver.find_element(:xpath, '//*[@class="fr-element fr-view"]').click
|
4426
|
+
sleep(1)
|
4427
|
+
puts '내용 항목 코드 타겟 31.......'.red
|
4428
|
+
rescue
|
4429
|
+
|
4430
|
+
end
|
4431
|
+
end
|
4222
4432
|
end
|
4223
4433
|
end
|
4224
4434
|
end
|
@@ -4324,12 +4534,28 @@ if option['내용사진자동삽입'] == 'true'
|
|
4324
4534
|
@driver.switch_to.window(@driver.window_handles[1]) # 팝업창에서 선택
|
4325
4535
|
begin
|
4326
4536
|
sleep(2)
|
4537
|
+
# 요소 찾기 타임아웃을 10초로 설정
|
4538
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 60)
|
4539
|
+
#요소가 나타날 때까지 60초 동안 기다립니다.
|
4540
|
+
wait.until { @driver.find_element(:xpath, '//*[@class="btn btn-success fileinput-button"]') }
|
4541
|
+
sleep(1)
|
4327
4542
|
@driver.find_element(:xpath, '//*[@class="btn btn-success fileinput-button"]').click #이미지 올리기 버튼
|
4328
4543
|
rescue
|
4329
4544
|
begin
|
4330
|
-
|
4331
|
-
|
4332
|
-
|
4545
|
+
@driver.close
|
4546
|
+
sleep(1)
|
4547
|
+
@driver.switch_to.window(@driver.window_handles[0])
|
4548
|
+
sleep(1)
|
4549
|
+
@driver.find_element(:xpath, '//*[@class="se2_photo ico_btn"]').click #이미지 버튼 선택
|
4550
|
+
sleep(2)
|
4551
|
+
@driver.switch_to.window(@driver.window_handles[1]) # 팝업창에서 선택
|
4552
|
+
sleep(2)
|
4553
|
+
# 요소 찾기 타임아웃을 10초로 설정
|
4554
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 60)
|
4555
|
+
#요소가 나타날 때까지 60초 동안 기다립니다.
|
4556
|
+
wait.until { @driver.find_element(:xpath, '//*[@class="btn btn-success fileinput-button"]') }
|
4557
|
+
sleep(1)
|
4558
|
+
@driver.find_element(:xpath, '//*[@class="btn btn-success fileinput-button"]').click #이미지 올리기 버튼
|
4333
4559
|
rescue
|
4334
4560
|
begin
|
4335
4561
|
@driver.close
|
@@ -4345,7 +4571,10 @@ if option['내용사진자동삽입'] == 'true'
|
|
4345
4571
|
sleep(3)
|
4346
4572
|
key_stroke('enter')
|
4347
4573
|
sleep(3)
|
4574
|
+
begin
|
4348
4575
|
@driver.find_element(:xpath, '//*[@id="img_upload_submit"]').click #이미지 등록 버튼
|
4576
|
+
rescue
|
4577
|
+
end
|
4349
4578
|
sleep(1)
|
4350
4579
|
@driver.switch_to.window(@driver.window_handles[0])
|
4351
4580
|
sleep(2)
|
@@ -5117,8 +5346,17 @@ puts '-[√] 캡챠 유형 탐색.......'.green
|
|
5117
5346
|
begin
|
5118
5347
|
@driver.switch_to.default_content()
|
5119
5348
|
@driver.find_element(:xpath, '//*[@id="mb_kcaptcha"]').click
|
5120
|
-
|
5121
5349
|
sleep(1)
|
5350
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5351
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5352
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5353
|
+
sleep(2)
|
5354
|
+
@driver.manage.window.maximize
|
5355
|
+
sleep(2)
|
5356
|
+
mouse_move_percentage(0.3,0.02)
|
5357
|
+
sleep(0.5)
|
5358
|
+
left_click
|
5359
|
+
sleep(2)
|
5122
5360
|
el = @driver.find_element(:xpath, '//*[@id="mb_kcaptcha"]')
|
5123
5361
|
@driver.action.context_click(el).perform
|
5124
5362
|
sleep(1)
|
@@ -5132,8 +5370,17 @@ rescue
|
|
5132
5370
|
begin
|
5133
5371
|
@driver.switch_to.default_content()
|
5134
5372
|
@driver.find_element(:xpath, '//*[@alt="자동등록방지"]').click
|
5135
|
-
|
5136
5373
|
sleep(1)
|
5374
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5375
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5376
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5377
|
+
sleep(2)
|
5378
|
+
@driver.manage.window.maximize
|
5379
|
+
sleep(2)
|
5380
|
+
mouse_move_percentage(0.3,0.02)
|
5381
|
+
sleep(0.5)
|
5382
|
+
left_click
|
5383
|
+
sleep(2)
|
5137
5384
|
el = @driver.find_element(:xpath, '//*[@alt="자동등록방지"]')
|
5138
5385
|
@driver.action.context_click(el).perform
|
5139
5386
|
sleep(1)
|
@@ -5147,8 +5394,17 @@ rescue
|
|
5147
5394
|
begin
|
5148
5395
|
@driver.switch_to.default_content()
|
5149
5396
|
@driver.find_element(:xpath, '//*[@id="captcha_img"]').click
|
5150
|
-
|
5151
5397
|
sleep(1)
|
5398
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5399
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5400
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5401
|
+
sleep(2)
|
5402
|
+
@driver.manage.window.maximize
|
5403
|
+
sleep(2)
|
5404
|
+
mouse_move_percentage(0.3,0.02)
|
5405
|
+
sleep(0.5)
|
5406
|
+
left_click
|
5407
|
+
sleep(2)
|
5152
5408
|
el = @driver.find_element(:xpath, '//*[@id="captcha_img"]')
|
5153
5409
|
@driver.action.context_click(el).perform
|
5154
5410
|
sleep(1)
|
@@ -5162,8 +5418,17 @@ rescue
|
|
5162
5418
|
begin
|
5163
5419
|
@driver.switch_to.default_content()
|
5164
5420
|
@driver.find_element(:xpath, '//*[@id="kcaptcha"]').click
|
5165
|
-
|
5166
5421
|
sleep(1)
|
5422
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5423
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5424
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5425
|
+
sleep(2)
|
5426
|
+
@driver.manage.window.maximize
|
5427
|
+
sleep(2)
|
5428
|
+
mouse_move_percentage(0.3,0.02)
|
5429
|
+
sleep(0.5)
|
5430
|
+
left_click
|
5431
|
+
sleep(2)
|
5167
5432
|
el = @driver.find_element(:xpath, '//*[@id="kcaptcha"]')
|
5168
5433
|
@driver.action.context_click(el).perform
|
5169
5434
|
sleep(1)
|
@@ -5177,8 +5442,17 @@ rescue
|
|
5177
5442
|
begin
|
5178
5443
|
@driver.switch_to.default_content()
|
5179
5444
|
@driver.find_element(:xpath, '//*[@for="kboard-input-captcha"]').click
|
5180
|
-
|
5181
5445
|
sleep(1)
|
5446
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5447
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5448
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5449
|
+
sleep(2)
|
5450
|
+
@driver.manage.window.maximize
|
5451
|
+
sleep(2)
|
5452
|
+
mouse_move_percentage(0.3,0.02)
|
5453
|
+
sleep(0.5)
|
5454
|
+
left_click
|
5455
|
+
sleep(2)
|
5182
5456
|
el = @driver.find_element(:xpath, '//*[@for="kboard-input-captcha"]')
|
5183
5457
|
@driver.action.context_click(el).perform
|
5184
5458
|
sleep(1)
|
@@ -5193,8 +5467,17 @@ rescue
|
|
5193
5467
|
@driver.switch_to.default_content()
|
5194
5468
|
sleep(1)
|
5195
5469
|
@driver.find_element(:xpath, '//*[@id="captcha_Write"]').click
|
5196
|
-
|
5197
5470
|
sleep(1)
|
5471
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5472
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5473
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5474
|
+
sleep(2)
|
5475
|
+
@driver.manage.window.maximize
|
5476
|
+
sleep(2)
|
5477
|
+
mouse_move_percentage(0.3,0.02)
|
5478
|
+
sleep(0.5)
|
5479
|
+
left_click
|
5480
|
+
sleep(2)
|
5198
5481
|
el = @driver.find_element(:xpath, '//*[@id="captcha_Write"]')
|
5199
5482
|
@driver.action.context_click(el).perform
|
5200
5483
|
sleep(1)
|
@@ -5208,8 +5491,17 @@ rescue
|
|
5208
5491
|
begin
|
5209
5492
|
@driver.switch_to.default_content()
|
5210
5493
|
@driver.find_element(:xpath, '//*[@image-reader="in-progress"]').click
|
5211
|
-
|
5212
5494
|
sleep(1)
|
5495
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5496
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5497
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5498
|
+
sleep(2)
|
5499
|
+
@driver.manage.window.maximize
|
5500
|
+
sleep(2)
|
5501
|
+
mouse_move_percentage(0.3,0.02)
|
5502
|
+
sleep(0.5)
|
5503
|
+
left_click
|
5504
|
+
sleep(2)
|
5213
5505
|
el = @driver.find_element(:xpath, '//*[@image-reader="in-progress"]')
|
5214
5506
|
@driver.action.context_click(el).perform
|
5215
5507
|
sleep(1)
|
@@ -5223,8 +5515,17 @@ rescue
|
|
5223
5515
|
begin
|
5224
5516
|
@driver.switch_to.default_content()
|
5225
5517
|
@driver.find_element(:xpath, '//*[@id="spamauth"]').click
|
5226
|
-
|
5227
5518
|
sleep(1)
|
5519
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5520
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5521
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5522
|
+
sleep(2)
|
5523
|
+
@driver.manage.window.maximize
|
5524
|
+
sleep(2)
|
5525
|
+
mouse_move_percentage(0.3,0.02)
|
5526
|
+
sleep(0.5)
|
5527
|
+
left_click
|
5528
|
+
sleep(2)
|
5228
5529
|
el = @driver.find_element(:xpath, '//*[@id="spamauth"]')
|
5229
5530
|
@driver.action.context_click(el).perform
|
5230
5531
|
sleep(1)
|
@@ -5238,8 +5539,17 @@ rescue
|
|
5238
5539
|
begin
|
5239
5540
|
@driver.switch_to.default_content()
|
5240
5541
|
@driver.find_element(:xpath, '//*[@id="norobot_img"]').click
|
5241
|
-
|
5242
5542
|
sleep(1)
|
5543
|
+
puts '-[√] 캡챠 발견!! 캡차 해제를 위한 환경설정 약 10초 소요.......'.red
|
5544
|
+
puts '-[√] 챕챠 해제 중~ 해제 완료까지 마우스 움직이지 마세요.......'.red
|
5545
|
+
@driver.manage.window.position = Selenium::WebDriver::Point.new(0, 0)
|
5546
|
+
sleep(2)
|
5547
|
+
@driver.manage.window.maximize
|
5548
|
+
sleep(2)
|
5549
|
+
mouse_move_percentage(0.3,0.02)
|
5550
|
+
sleep(0.5)
|
5551
|
+
left_click
|
5552
|
+
sleep(2)
|
5243
5553
|
el = @driver.find_element(:xpath, '//*[@id="norobot_img"]')
|
5244
5554
|
@driver.action.context_click(el).perform
|
5245
5555
|
sleep(1)
|
@@ -5263,11 +5573,17 @@ end
|
|
5263
5573
|
##캡챠 이미지,2캡챠,,등등 코드 부분─────────────────────────────────────────────────────────────────────>
|
5264
5574
|
|
5265
5575
|
sleep(1)
|
5576
|
+
|
5266
5577
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
5267
5578
|
puts '-[√] 캡챠 입력 항목 탐색.......'.green
|
5268
5579
|
begin
|
5269
5580
|
@driver.find_element(:xpath, '//*[@name="captcha_key"]').click
|
5581
|
+
|
5270
5582
|
sleep(1)
|
5583
|
+
mouse_move_percentage(0.3,0.02)
|
5584
|
+
sleep(0.5)
|
5585
|
+
left_click
|
5586
|
+
sleep(2)
|
5271
5587
|
el = @driver.find_element(:xpath, '//*[@name="captcha_key"]')
|
5272
5588
|
@driver.action.context_click(el).perform
|
5273
5589
|
sleep(1)
|
@@ -5301,7 +5617,12 @@ begin
|
|
5301
5617
|
rescue
|
5302
5618
|
begin
|
5303
5619
|
@driver.find_element(:xpath, '//*[@id="captcha_key"]').click
|
5620
|
+
|
5304
5621
|
sleep(1)
|
5622
|
+
mouse_move_percentage(0.3,0.02)
|
5623
|
+
sleep(0.5)
|
5624
|
+
left_click
|
5625
|
+
sleep(2)
|
5305
5626
|
el = @driver.find_element(:xpath, '//*[@id="captcha_key"]')
|
5306
5627
|
@driver.action.context_click(el).perform
|
5307
5628
|
|
@@ -5335,7 +5656,12 @@ rescue
|
|
5335
5656
|
rescue
|
5336
5657
|
begin
|
5337
5658
|
@driver.find_element(:xpath, '=//*[@id="code"]').click
|
5659
|
+
|
5338
5660
|
sleep(1)
|
5661
|
+
mouse_move_percentage(0.3,0.02)
|
5662
|
+
sleep(0.5)
|
5663
|
+
left_click
|
5664
|
+
sleep(2)
|
5339
5665
|
el = @driver.find_element(:xpath, '//*[@id="code"]')
|
5340
5666
|
@driver.action.context_click(el).perform
|
5341
5667
|
|
@@ -5369,7 +5695,12 @@ rescue
|
|
5369
5695
|
rescue
|
5370
5696
|
begin
|
5371
5697
|
@driver.find_element(:xpath, '//*[@id="kboard-input-captcha"]').click
|
5698
|
+
|
5372
5699
|
sleep(1)
|
5700
|
+
mouse_move_percentage(0.3,0.02)
|
5701
|
+
sleep(0.5)
|
5702
|
+
left_click
|
5703
|
+
sleep(2)
|
5373
5704
|
el = @driver.find_element(:xpath, '//*[@id="kboard-input-captcha"]')
|
5374
5705
|
@driver.action.context_click(el).perform
|
5375
5706
|
|
@@ -5403,7 +5734,12 @@ rescue
|
|
5403
5734
|
rescue
|
5404
5735
|
begin
|
5405
5736
|
@driver.find_element(:xpath, '//*[@fw-label="보안문자"]').click
|
5737
|
+
|
5406
5738
|
sleep(1)
|
5739
|
+
mouse_move_percentage(0.3,0.02)
|
5740
|
+
sleep(0.5)
|
5741
|
+
left_click
|
5742
|
+
sleep(2)
|
5407
5743
|
el = @driver.find_element(:xpath, '//*[@fw-label="보안문자"]')
|
5408
5744
|
@driver.action.context_click(el).perform
|
5409
5745
|
|
@@ -5437,7 +5773,12 @@ rescue
|
|
5437
5773
|
rescue
|
5438
5774
|
begin
|
5439
5775
|
@driver.find_element(:xpath, '//*[@name="captcha"]').click
|
5776
|
+
|
5440
5777
|
sleep(1)
|
5778
|
+
mouse_move_percentage(0.3,0.02)
|
5779
|
+
sleep(0.5)
|
5780
|
+
left_click
|
5781
|
+
sleep(2)
|
5441
5782
|
el = @driver.find_element(:xpath, '//*[@name="captcha"]')
|
5442
5783
|
@driver.action.context_click(el).perform
|
5443
5784
|
|
@@ -5471,7 +5812,12 @@ rescue
|
|
5471
5812
|
rescue
|
5472
5813
|
begin
|
5473
5814
|
@driver.find_element(:xpath, '//*[@id="spamCode"]').click
|
5815
|
+
|
5474
5816
|
sleep(1)
|
5817
|
+
mouse_move_percentage(0.3,0.02)
|
5818
|
+
sleep(0.5)
|
5819
|
+
left_click
|
5820
|
+
sleep(2)
|
5475
5821
|
el = @driver.find_element(:xpath, '//*[@id="spamCode"]')
|
5476
5822
|
@driver.action.context_click(el).perform
|
5477
5823
|
|
@@ -5505,7 +5851,12 @@ rescue
|
|
5505
5851
|
rescue
|
5506
5852
|
begin
|
5507
5853
|
@driver.find_element(:xpath, '//*[@id="norobot_code"]').click
|
5854
|
+
|
5508
5855
|
sleep(1)
|
5856
|
+
mouse_move_percentage(0.3,0.02)
|
5857
|
+
sleep(0.5)
|
5858
|
+
left_click
|
5859
|
+
sleep(2)
|
5509
5860
|
el = @driver.find_element(:xpath, '//*[@id="norobot_code"]')
|
5510
5861
|
@driver.action.context_click(el).perform
|
5511
5862
|
|
@@ -5540,7 +5891,12 @@ rescue
|
|
5540
5891
|
@driver.switch_to.default_content()
|
5541
5892
|
sleep(1)
|
5542
5893
|
@driver.find_element(:xpath, '//*[@name="kcaptcha_code"]').click
|
5894
|
+
|
5543
5895
|
sleep(1)
|
5896
|
+
mouse_move_percentage(0.3,0.02)
|
5897
|
+
sleep(0.5)
|
5898
|
+
left_click
|
5899
|
+
sleep(2)
|
5544
5900
|
el = @driver.find_element(:xpath, '//*[@name="kcaptcha_code"]')
|
5545
5901
|
@driver.action.context_click(el).perform
|
5546
5902
|
|
@@ -5609,10 +5965,10 @@ sleep(10)
|
|
5609
5965
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
5610
5966
|
puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
5611
5967
|
puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
5612
|
-
@driver.quit
|
5968
|
+
@driver.quit
|
5613
5969
|
rescue
|
5614
5970
|
# 타임아웃을 77초로 설정
|
5615
|
-
wait = Selenium::WebDriver::Wait.new(:timeout =>
|
5971
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 150)
|
5616
5972
|
# 요소가 나타날 때까지 100초 동안 기다립니다.
|
5617
5973
|
wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
|
5618
5974
|
sleep(1)
|
@@ -5630,10 +5986,14 @@ end
|
|
5630
5986
|
##등록 버튼 코드 부분─────────────────────────────────────────────────────────────────────>
|
5631
5987
|
puts '-[√] HTML 버튼 복구 여부 체크.......'.yellow
|
5632
5988
|
begin
|
5989
|
+
@driver.find_element(:xpath, '//*[@aria-label="코드 보기"]').send_keys()
|
5990
|
+
sleep(1)
|
5633
5991
|
@driver.find_element(:xpath, '//*[@aria-label="코드 보기"]').click
|
5634
5992
|
sleep(1)
|
5635
5993
|
rescue
|
5636
5994
|
begin
|
5995
|
+
@driver.find_element(:xpath, '//*[@class="note-icon-code"]').send_keys()
|
5996
|
+
sleep(1)
|
5637
5997
|
@driver.find_element(:xpath, '//*[@class="note-icon-code"]').click
|
5638
5998
|
sleep(1)
|
5639
5999
|
rescue
|
@@ -5642,116 +6002,178 @@ rescue
|
|
5642
6002
|
end
|
5643
6003
|
##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
|
5644
6004
|
sleep(1)
|
5645
|
-
|
6005
|
+
@driver.action.key_down(:tab).key_up(:tab).perform #x탭
|
5646
6006
|
#@driver.execute_script("document.body.style.zoom = '0.70'")
|
5647
6007
|
sleep(1)
|
5648
6008
|
##등록 버튼 코드 부분─────────────────────────────────────────────────────────────────────>
|
5649
6009
|
puts '-[√] 내용 등록 버튼 탐색 시작.......'.yellow
|
5650
6010
|
########─────────────────────────────▼▼▼▼▼▼▼ 등록버튼 ▼▼▼▼▼▼▼──────────────────────────────#######
|
5651
6011
|
begin
|
5652
|
-
@driver.find_element(:xpath, '//*[@value="등록"]').
|
6012
|
+
@driver.find_element(:xpath, '//*[@value="등록"]').send_keys()
|
6013
|
+
sleep(2)
|
6014
|
+
|
6015
|
+
@driver.find_element(:xpath, '//*[@value="등록"]').send_keys(:enter)
|
5653
6016
|
puts '-[√] 등록을 1번 코드로 시도하였습니다.......'.magenta
|
5654
6017
|
sleep(5)
|
5655
6018
|
rescue
|
5656
6019
|
begin
|
5657
|
-
@driver.find_element(:xpath, '//*[@alt="등록"]').
|
6020
|
+
@driver.find_element(:xpath, '//*[@alt="등록"]').send_keys()
|
6021
|
+
sleep(2)
|
6022
|
+
|
6023
|
+
@driver.find_element(:xpath, '//*[@alt="등록"]').send_keys(:enter)
|
5658
6024
|
puts '-[√] 등록을 2번 코드로 시도하였습니다.......'.magenta
|
5659
6025
|
sleep(5)
|
5660
6026
|
rescue
|
5661
6027
|
begin
|
5662
|
-
@driver.find_element(:xpath, '//*[@value="작성완료"]').
|
6028
|
+
@driver.find_element(:xpath, '//*[@value="작성완료"]').send_keys()
|
6029
|
+
sleep(2)
|
6030
|
+
|
6031
|
+
@driver.find_element(:xpath, '//*[@value="작성완료"]').send_keys(:enter)
|
5663
6032
|
puts '-[√] 등록을 3번 코드로 시도하였습니다.......'.magenta
|
5664
6033
|
sleep(5)
|
5665
6034
|
rescue
|
5666
6035
|
begin
|
5667
|
-
@driver.find_element(:xpath, '//*[@id="btn_submit"]').
|
6036
|
+
@driver.find_element(:xpath, '//*[@id="btn_submit"]').send_keys()
|
6037
|
+
sleep(2)
|
6038
|
+
@driver.find_element(:xpath, '//*[@id="btn_submit"]').send_keys(:enter)
|
5668
6039
|
puts '-[√] 등록을 4번 코드로 시도하였습니다.......'.magenta
|
5669
6040
|
sleep(5)
|
5670
6041
|
rescue
|
5671
6042
|
begin
|
5672
|
-
@driver.find_element(:xpath, '//*[@class="btn btn-success btn-sm"]')
|
6043
|
+
@driver.find_element(:xpath, '//*[@class="btn btn-success btn-sm"]').send_keys()
|
6044
|
+
sleep(2)
|
6045
|
+
|
6046
|
+
@driver.find_element(:xpath, '//*[@class="btn btn-success btn-sm"]').send_keys(:enter)
|
5673
6047
|
puts '-[√] 등록을 5번 코드로 시도하였습니다.......'.magenta
|
5674
6048
|
sleep(5)
|
5675
6049
|
rescue
|
5676
6050
|
begin
|
5677
|
-
@driver.find_element(:xpath, '//*[@class="btn btn-default btn-send-write"]').
|
6051
|
+
@driver.find_element(:xpath, '//*[@class="btn btn-default btn-send-write"]').send_keys()
|
6052
|
+
sleep(2)
|
6053
|
+
|
6054
|
+
@driver.find_element(:xpath, '//*[@class="btn btn-default btn-send-write"]').send_keys(:enter)
|
5678
6055
|
puts '-[√] 등록을 6번 코드로 시도하였습니다.......'.magenta
|
5679
6056
|
sleep(5)
|
5680
6057
|
rescue
|
5681
6058
|
begin
|
5682
|
-
@driver.find_element(:xpath, '//*[@title="확인"]').
|
6059
|
+
@driver.find_element(:xpath, '//*[@title="확인"]').send_keys()
|
6060
|
+
sleep(2)
|
6061
|
+
|
6062
|
+
@driver.find_element(:xpath, '//*[@title="확인"]').send_keys(:enter)
|
5683
6063
|
puts '-[√] 등록을 7번 코드로 시도하였습니다.......'.magenta
|
5684
6064
|
sleep(5)
|
5685
6065
|
rescue
|
5686
6066
|
begin
|
5687
|
-
@driver.find_element(:xpath, '//*[@id="btnSubmit"]').
|
6067
|
+
@driver.find_element(:xpath, '//*[@id="btnSubmit"]').send_keys()
|
6068
|
+
sleep(2)
|
6069
|
+
|
6070
|
+
@driver.find_element(:xpath, '//*[@id="btnSubmit"]').send_keys(:enter)
|
5688
6071
|
puts '-[√] 등록을 8번 코드로 시도하였습니다.......'.magenta
|
5689
6072
|
sleep(5)
|
5690
6073
|
rescue
|
5691
6074
|
begin
|
5692
|
-
@driver.find_element(:xpath, '//*[@src="images/board8_input.gif"]').
|
6075
|
+
@driver.find_element(:xpath, '//*[@src="images/board8_input.gif"]').send_keys()
|
6076
|
+
sleep(2)
|
6077
|
+
|
6078
|
+
@driver.find_element(:xpath, '//*[@src="images/board8_input.gif"]').send_keys(:enter)
|
5693
6079
|
puts '-[√] 등록을 9번 코드로 시도하였습니다.......'.magenta
|
5694
6080
|
sleep(5)
|
5695
6081
|
rescue
|
5696
6082
|
begin
|
5697
|
-
@driver.find_element(:xpath, '//*[@align="absmiddle"]').
|
6083
|
+
@driver.find_element(:xpath, '//*[@align="absmiddle"]').send_keys()
|
6084
|
+
sleep(2)
|
6085
|
+
|
6086
|
+
@driver.find_element(:xpath, '//*[@align="absmiddle"]').send_keys(:enter)
|
5698
6087
|
puts '-[√] 등록을 10번 코드로 시도하였습니다.......'.magenta
|
5699
6088
|
sleep(5)
|
5700
6089
|
rescue
|
5701
6090
|
begin
|
5702
|
-
@driver.find_element(:partial_link_text, '작성완료').
|
6091
|
+
@driver.find_element(:partial_link_text, '작성완료').send_keys()
|
6092
|
+
sleep(2)
|
6093
|
+
|
6094
|
+
@driver.find_element(:partial_link_text, '작성완료').send_keys(:enter) #요소같고 텍스트가 다를때 텍스트로 타겟
|
5703
6095
|
puts '-[√] 등록을 11번 코드로 시도하였습니다.......'.magenta
|
5704
6096
|
sleep(5)
|
5705
6097
|
rescue
|
5706
6098
|
begin
|
5707
|
-
@driver.find_element(:xpath, '//*[@class="_save_post save_post btn"]').
|
6099
|
+
@driver.find_element(:xpath, '//*[@class="_save_post save_post btn"]').send_keys()
|
6100
|
+
sleep(2)
|
6101
|
+
|
6102
|
+
@driver.find_element(:xpath, '//*[@class="_save_post save_post btn"]').send_keys(:enter)
|
5708
6103
|
puts '-[√] 등록을 12번 코드로 시도하였습니다.......'.magenta
|
5709
6104
|
sleep(5)
|
5710
6105
|
rescue
|
5711
6106
|
begin
|
5712
|
-
@driver.find_element(:xpath, '//*[@id="main_btn_box"]/button').
|
6107
|
+
@driver.find_element(:xpath, '//*[@id="main_btn_box"]/button').send_keys()
|
6108
|
+
sleep(2)
|
6109
|
+
|
6110
|
+
@driver.find_element(:xpath, '//*[@id="main_btn_box"]/button').send_keys(:enter)
|
5713
6111
|
puts '-[√] 등록을 13번 코드로 시도하였습니다.......'.magenta
|
5714
6112
|
sleep(5)
|
5715
6113
|
rescue
|
5716
6114
|
begin
|
5717
|
-
@driver.find_element(:xpath, '//*[@type="submit"]').
|
6115
|
+
@driver.find_element(:xpath, '//*[@type="submit"]').send_keys()
|
6116
|
+
sleep(2)
|
6117
|
+
|
6118
|
+
@driver.find_element(:xpath, '//*[@type="submit"]').send_keys(:enter)
|
5718
6119
|
puts '-[√] 등록을 14번 코드로 시도하였습니다.......'.magenta
|
5719
6120
|
sleep(5)
|
5720
6121
|
rescue
|
5721
6122
|
begin
|
5722
|
-
@driver.find_element(:xpath, '//*[@id="bd-write-btns"]/button').
|
6123
|
+
@driver.find_element(:xpath, '//*[@id="bd-write-btns"]/button').send_keys()
|
6124
|
+
sleep(2)
|
6125
|
+
|
6126
|
+
@driver.find_element(:xpath, '//*[@id="bd-write-btns"]/button').send_keys(:enter)
|
5723
6127
|
puts '-[√] 등록을 15번 코드로 시도하였습니다.......'.magenta
|
5724
6128
|
sleep(5)
|
5725
6129
|
rescue
|
5726
6130
|
begin
|
5727
|
-
@driver.find_element(:xpath, '//*[@id="com_btn"]').
|
6131
|
+
@driver.find_element(:xpath, '//*[@id="com_btn"]').send_keys()
|
6132
|
+
sleep(2)
|
6133
|
+
|
6134
|
+
@driver.find_element(:xpath, '//*[@id="com_btn"]').send_keys(:enter)
|
5728
6135
|
puts '-[√] 등록을 16번 코드로 시도하였습니다.......'.magenta
|
5729
6136
|
sleep(5)
|
5730
6137
|
rescue
|
5731
6138
|
begin
|
5732
|
-
@driver.find_element(:xpath, '//*[@class="submit"]').
|
6139
|
+
@driver.find_element(:xpath, '//*[@class="submit"]').send_keys()
|
6140
|
+
sleep(2)
|
6141
|
+
|
6142
|
+
@driver.find_element(:xpath, '//*[@class="submit"]').send_keys(:enter)
|
5733
6143
|
puts '-[√] 등록을 17번 코드로 시도하였습니다.......'.magenta
|
5734
6144
|
sleep(5)
|
5735
6145
|
rescue
|
5736
6146
|
begin
|
5737
|
-
@driver.find_element(:xpath, '//*[@id="savePostInBoard"]').
|
6147
|
+
@driver.find_element(:xpath, '//*[@id="savePostInBoard"]').send_keys()
|
6148
|
+
sleep(2)
|
6149
|
+
|
6150
|
+
@driver.find_element(:xpath, '//*[@id="savePostInBoard"]').send_keys(:enter)
|
5738
6151
|
puts '-[√] 등록을 18번 코드로 시도하였습니다.......'.magenta
|
5739
6152
|
sleep(5)
|
5740
6153
|
rescue
|
5741
6154
|
begin
|
5742
|
-
@driver.find_element(:xpath, '//*[@form="write"]').
|
6155
|
+
@driver.find_element(:xpath, '//*[@form="write"]').send_keys()
|
6156
|
+
sleep(2)
|
6157
|
+
|
6158
|
+
@driver.find_element(:xpath, '//*[@form="write"]').send_keys(:enter)
|
5743
6159
|
puts '-[√] 등록을 19번 코드로 시도하였습니다.......'.magenta
|
5744
6160
|
sleep(5)
|
5745
6161
|
|
5746
6162
|
rescue
|
5747
6163
|
begin
|
5748
|
-
@driver.find_element(:partial_link_text, '저장하기').
|
6164
|
+
@driver.find_element(:partial_link_text, '저장하기').send_keys()
|
6165
|
+
sleep(2)
|
6166
|
+
|
6167
|
+
@driver.find_element(:partial_link_text, '저장하기').send_keys(:enter) #요소같고 텍스트가 다를때 텍스트로 타겟
|
5749
6168
|
puts '-[√] 등록을 20번 코드로 시도하였습니다.......'.magenta
|
5750
6169
|
sleep(5)
|
5751
6170
|
|
5752
6171
|
rescue
|
5753
6172
|
begin
|
5754
|
-
@driver.find_element(:xpath, '//*[@id="boardWriteForm"]/div/div[3]/a[2]').
|
6173
|
+
@driver.find_element(:xpath, '//*[@id="boardWriteForm"]/div/div[3]/a[2]').send_keys()
|
6174
|
+
sleep(2)
|
6175
|
+
|
6176
|
+
@driver.find_element(:xpath, '//*[@id="boardWriteForm"]/div/div[3]/a[2]').send_keys(:enter)
|
5755
6177
|
puts '-[√] 등록을 21시도하였습니다.......'.magenta
|
5756
6178
|
sleep(5)
|
5757
6179
|
|
@@ -5760,7 +6182,9 @@ rescue
|
|
5760
6182
|
begin
|
5761
6183
|
puts '-[√] 등록 버튼 코드 탐색에 실패하였습니다.......'.magenta
|
5762
6184
|
puts '-[√] 다른 방법으로 등록을 시도 합니다.......'.magenta
|
5763
|
-
|
6185
|
+
@driver.action.send_keys(:page_up).perform #스크롤 내리기
|
6186
|
+
sleep(1)
|
6187
|
+
@driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys()
|
5764
6188
|
sleep(1)
|
5765
6189
|
@driver.find_element(:xpath, '//*[@id="wr_subject"]').click
|
5766
6190
|
sleep(1)
|
@@ -5769,6 +6193,8 @@ rescue
|
|
5769
6193
|
sleep(5)
|
5770
6194
|
rescue
|
5771
6195
|
begin
|
6196
|
+
@driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys()
|
6197
|
+
sleep(1)
|
5772
6198
|
@driver.find_element(:xpath, '//*[@fw-label="제목"]').click
|
5773
6199
|
sleep(1)
|
5774
6200
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5776,6 +6202,8 @@ rescue
|
|
5776
6202
|
sleep(5)
|
5777
6203
|
rescue
|
5778
6204
|
begin
|
6205
|
+
@driver.find_element(:xpath, '//*[@name="subject"]').send_keys()
|
6206
|
+
sleep(1)
|
5779
6207
|
@driver.find_element(:xpath, '//*[@name="subject"]').click
|
5780
6208
|
sleep(1)
|
5781
6209
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5783,6 +6211,8 @@ rescue
|
|
5783
6211
|
sleep(5)
|
5784
6212
|
rescue
|
5785
6213
|
begin
|
6214
|
+
@driver.find_element(:xpath, '//*[@name="title"]').send_keys()
|
6215
|
+
sleep(1)
|
5786
6216
|
@driver.find_element(:xpath, '//*[@name="title"]').click
|
5787
6217
|
sleep(1)
|
5788
6218
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5790,6 +6220,8 @@ rescue
|
|
5790
6220
|
sleep(5)
|
5791
6221
|
rescue
|
5792
6222
|
begin
|
6223
|
+
@driver.find_element(:xpath, '//*[@id="wr_title"]').send_keys()
|
6224
|
+
sleep(1)
|
5793
6225
|
@driver.find_element(:xpath, '//*[@id="wr_title"]').click
|
5794
6226
|
sleep(1)
|
5795
6227
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5797,6 +6229,8 @@ rescue
|
|
5797
6229
|
sleep(5)
|
5798
6230
|
rescue
|
5799
6231
|
begin
|
6232
|
+
@driver.find_element(:xpath, '//*[@id="title"]').send_keys()
|
6233
|
+
sleep(1)
|
5800
6234
|
@driver.find_element(:xpath, '//*[@id="title"]').click
|
5801
6235
|
sleep(1)
|
5802
6236
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5804,6 +6238,8 @@ rescue
|
|
5804
6238
|
sleep(5)
|
5805
6239
|
rescue
|
5806
6240
|
begin
|
6241
|
+
@driver.find_element(:xpath, '//*[@id="postTitle"]').send_keys()
|
6242
|
+
sleep(1)
|
5807
6243
|
@driver.find_element(:xpath, '//*[@id="postTitle"]').click
|
5808
6244
|
sleep(1)
|
5809
6245
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5811,6 +6247,8 @@ rescue
|
|
5811
6247
|
sleep(5)
|
5812
6248
|
rescue
|
5813
6249
|
begin
|
6250
|
+
@driver.find_element(:xpath, '//*[@title="input"]').send_keys()
|
6251
|
+
sleep(1)
|
5814
6252
|
@driver.find_element(:xpath, '//*[@title="input"]').click
|
5815
6253
|
sleep(1)
|
5816
6254
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5818,6 +6256,8 @@ rescue
|
|
5818
6256
|
sleep(5)
|
5819
6257
|
rescue
|
5820
6258
|
begin
|
6259
|
+
@driver.find_element(:xpath, '//*[@name="wr_subject"]').send_keys()
|
6260
|
+
sleep(1)
|
5821
6261
|
@driver.find_element(:xpath, '//*[@name="wr_subject"]').click
|
5822
6262
|
sleep(1)
|
5823
6263
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5825,6 +6265,8 @@ rescue
|
|
5825
6265
|
sleep(5)
|
5826
6266
|
rescue
|
5827
6267
|
begin
|
6268
|
+
@driver.find_element(:xpath, '//*[@name="post_title"]').send_keys()
|
6269
|
+
sleep(1)
|
5828
6270
|
@driver.find_element(:xpath, '//*[@name="post_title"]').click
|
5829
6271
|
sleep(1)
|
5830
6272
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5832,6 +6274,8 @@ rescue
|
|
5832
6274
|
sleep(5)
|
5833
6275
|
rescue
|
5834
6276
|
begin
|
6277
|
+
@driver.find_element(:xpath, '//*[@title="제목"]').send_keys()
|
6278
|
+
sleep(1)
|
5835
6279
|
@driver.find_element(:xpath, '//*[@title="제목"]').click
|
5836
6280
|
sleep(1)
|
5837
6281
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5839,6 +6283,8 @@ rescue
|
|
5839
6283
|
sleep(5)
|
5840
6284
|
rescue
|
5841
6285
|
begin
|
6286
|
+
@driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').send_keys()
|
6287
|
+
sleep(1)
|
5842
6288
|
@driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').click
|
5843
6289
|
sleep(1)
|
5844
6290
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5846,6 +6292,8 @@ rescue
|
|
5846
6292
|
sleep(5)
|
5847
6293
|
rescue
|
5848
6294
|
begin
|
6295
|
+
@driver.find_element(:xpath, '//*[@placeholder="제목"]').send_keys()
|
6296
|
+
sleep(1)
|
5849
6297
|
@driver.find_element(:xpath, '//*[@placeholder="제목"]').click
|
5850
6298
|
sleep(1)
|
5851
6299
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5853,6 +6301,8 @@ rescue
|
|
5853
6301
|
sleep(5)
|
5854
6302
|
rescue
|
5855
6303
|
begin
|
6304
|
+
@driver.find_element(:xpath, '//*[@hname="제목"]').send_keys()
|
6305
|
+
sleep(1)
|
5856
6306
|
@driver.find_element(:xpath, '//*[@hname="제목"]').click
|
5857
6307
|
sleep(1)
|
5858
6308
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5860,6 +6310,8 @@ rescue
|
|
5860
6310
|
sleep(5)
|
5861
6311
|
rescue
|
5862
6312
|
begin
|
6313
|
+
@driver.find_element(:xpath, '//*[@id="post_subject"]').send_keys()
|
6314
|
+
sleep(1)
|
5863
6315
|
@driver.find_element(:xpath, '//*[@id="post_subject"]').click
|
5864
6316
|
sleep(1)
|
5865
6317
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5867,6 +6319,8 @@ rescue
|
|
5867
6319
|
sleep(5)
|
5868
6320
|
rescue
|
5869
6321
|
begin
|
6322
|
+
@driver.find_element(:xpath, '//*[@id="search_bar"]').send_keys()
|
6323
|
+
sleep(1)
|
5870
6324
|
@driver.find_element(:xpath, '//*[@id="search_bar"]').click
|
5871
6325
|
sleep(1)
|
5872
6326
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5952,6 +6406,7 @@ rescue
|
|
5952
6406
|
ff.write('【등록실패내용:')
|
5953
6407
|
ff.write(error_text)
|
5954
6408
|
ff.write('】')
|
6409
|
+
ff.close()
|
5955
6410
|
puts '-[√] 로그 파일 생성 완료.......'.yellow
|
5956
6411
|
end
|
5957
6412
|
|