board_posting_duo 0.0.9 → 0.0.11
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 +519 -95
- 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
|
|
@@ -3901,20 +4067,12 @@ begin
|
|
3901
4067
|
begin
|
3902
4068
|
@driver.find_element(:xpath, '//*[@for="wr_subject"]').send_keys(title)
|
3903
4069
|
rescue
|
3904
|
-
|
3905
|
-
|
3906
|
-
@driver.find_element(:xpath, '/html/body/div[4]/div/div[2]/section/form/div[2]/div/input').click
|
3907
|
-
|
3908
|
-
@driver.action.send_keys(title).perform
|
3909
|
-
|
3910
|
-
|
3911
|
-
rescue
|
4070
|
+
|
4071
|
+
|
3912
4072
|
puts '-[√] 제목 입력 항목 코드 탐색 실패!!.......'.red
|
3913
4073
|
puts '-[√] 다음 작업 준비 중으로 1~60 초 정도 기다려주세요.......'.red
|
3914
4074
|
@driver.close
|
3915
|
-
|
3916
|
-
end
|
3917
|
-
|
4075
|
+
|
3918
4076
|
end
|
3919
4077
|
end
|
3920
4078
|
end
|
@@ -3945,81 +4103,102 @@ begin
|
|
3945
4103
|
begin
|
3946
4104
|
#아이프레임에서 코드 선택
|
3947
4105
|
@driver.switch_to.frame(@driver.find_element(:xpath, '//*[@scrolling="no"]'))
|
4106
|
+
|
3948
4107
|
@driver.find_element(:xpath, '//*[@class="se2_to_html"]').click
|
3949
4108
|
#아이프레임 나오기
|
3950
4109
|
@driver.switch_to.default_content()
|
3951
4110
|
rescue
|
3952
4111
|
begin
|
4112
|
+
|
3953
4113
|
@driver.find_element(:xpath, '//*[@title="HTML 편집"]').click
|
4114
|
+
|
3954
4115
|
rescue
|
3955
4116
|
begin
|
4117
|
+
|
3956
4118
|
@driver.find_element(:xpath, '//*[@id="html"]').click
|
3957
4119
|
rescue
|
3958
4120
|
begin
|
3959
|
-
|
3960
|
-
sleep(1)
|
4121
|
+
|
3961
4122
|
@driver.find_element(:xpath, '//*[@title="코드보기"]').click
|
3962
4123
|
rescue
|
3963
4124
|
begin
|
4125
|
+
|
3964
4126
|
@driver.find_element(:xpath, '//*[@id="chk_html"]').click
|
3965
4127
|
rescue
|
3966
4128
|
begin
|
4129
|
+
|
3967
4130
|
@driver.find_element(:xpath, '//*[@id="kboard_content-html"]').click
|
3968
4131
|
rescue
|
3969
4132
|
begin
|
4133
|
+
|
3970
4134
|
@driver.find_element(:xpath, '//*[@alt="코드"]').click
|
3971
4135
|
rescue
|
3972
4136
|
begin
|
4137
|
+
|
3973
4138
|
@driver.find_element(:xpath, '//*[@title="HTML 편집기"]').click
|
3974
4139
|
rescue
|
3975
4140
|
begin
|
4141
|
+
|
3976
4142
|
@driver.find_element(:xpath, '//*[@name="tag"]').click
|
3977
4143
|
rescue
|
3978
4144
|
begin
|
4145
|
+
|
3979
4146
|
@driver.find_element(:xpath, '//*[@name="html"]').click
|
3980
4147
|
rescue
|
3981
4148
|
begin
|
4149
|
+
|
3982
4150
|
@driver.find_element(:xpath, '//*[@id="html"]').click
|
3983
4151
|
rescue
|
3984
4152
|
begin
|
4153
|
+
|
3985
4154
|
@driver.find_element(:xpath, '//*[@data-wp-editor-id="kboard_content"]').click
|
3986
4155
|
rescue
|
3987
4156
|
begin
|
4157
|
+
|
3988
4158
|
@driver.find_element(:xpath, '//*[@title="소스"]').click
|
3989
4159
|
rescue
|
3990
4160
|
begin
|
4161
|
+
|
3991
4162
|
@driver.find_element(:xpath, '//*[@class="note-btn btn-codeview note-codeview-keep active"]').click
|
3992
4163
|
rescue
|
3993
4164
|
begin
|
4165
|
+
|
3994
4166
|
@driver.find_element(:xpath, '//*[@for="html"]').click
|
3995
4167
|
rescue
|
3996
4168
|
begin
|
4169
|
+
|
3997
4170
|
@driver.find_element(:xpath, '//*[@onclick="html_auto_br(this);"]').click
|
3998
4171
|
rescue
|
3999
4172
|
begin
|
4173
|
+
|
4000
4174
|
@driver.find_element(:xpath, '//*[@data-title="코드보기"]').click
|
4001
4175
|
rescue
|
4002
4176
|
begin
|
4177
|
+
|
4003
4178
|
@driver.find_element(:xpath, '//*[@title="에디터 타입"]').click
|
4004
4179
|
rescue
|
4005
4180
|
begin
|
4181
|
+
|
4006
4182
|
@driver.find_element(:xpath, '//*[@aria-label="코드 보기"]').click
|
4007
4183
|
rescue
|
4008
4184
|
begin
|
4185
|
+
|
4009
4186
|
@driver.find_element(:xpath, '//*[@id="fwrite"]/ul/li[2]/div/div/div').click
|
4010
4187
|
rescue
|
4011
4188
|
begin
|
4189
|
+
|
4012
4190
|
@driver.find_element(:xpath, '//*[@data-cke-tooltip-text="소스"]').click
|
4013
4191
|
rescue
|
4014
4192
|
begin
|
4015
|
-
|
4016
|
-
sleep(1)
|
4193
|
+
|
4017
4194
|
@driver.find_element(:xpath, '//*[@id="html-1"]').click
|
4018
4195
|
rescue
|
4019
4196
|
begin
|
4197
|
+
|
4020
4198
|
@driver.find_element(:xpath, '//*[@id="html-1"]').click
|
4021
4199
|
rescue
|
4022
4200
|
begin
|
4201
|
+
|
4023
4202
|
@driver.find_element(:xpath, '//*[@class="fas fa-code"]').click
|
4024
4203
|
rescue
|
4025
4204
|
puts '-[√] HTML 코드 탐색 실패.......'.red
|
@@ -4355,12 +4534,28 @@ if option['내용사진자동삽입'] == 'true'
|
|
4355
4534
|
@driver.switch_to.window(@driver.window_handles[1]) # 팝업창에서 선택
|
4356
4535
|
begin
|
4357
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)
|
4358
4542
|
@driver.find_element(:xpath, '//*[@class="btn btn-success fileinput-button"]').click #이미지 올리기 버튼
|
4359
4543
|
rescue
|
4360
4544
|
begin
|
4361
|
-
|
4362
|
-
|
4363
|
-
|
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 #이미지 올리기 버튼
|
4364
4559
|
rescue
|
4365
4560
|
begin
|
4366
4561
|
@driver.close
|
@@ -4376,7 +4571,10 @@ if option['내용사진자동삽입'] == 'true'
|
|
4376
4571
|
sleep(3)
|
4377
4572
|
key_stroke('enter')
|
4378
4573
|
sleep(3)
|
4574
|
+
begin
|
4379
4575
|
@driver.find_element(:xpath, '//*[@id="img_upload_submit"]').click #이미지 등록 버튼
|
4576
|
+
rescue
|
4577
|
+
end
|
4380
4578
|
sleep(1)
|
4381
4579
|
@driver.switch_to.window(@driver.window_handles[0])
|
4382
4580
|
sleep(2)
|
@@ -5148,8 +5346,17 @@ puts '-[√] 캡챠 유형 탐색.......'.green
|
|
5148
5346
|
begin
|
5149
5347
|
@driver.switch_to.default_content()
|
5150
5348
|
@driver.find_element(:xpath, '//*[@id="mb_kcaptcha"]').click
|
5151
|
-
|
5152
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)
|
5153
5360
|
el = @driver.find_element(:xpath, '//*[@id="mb_kcaptcha"]')
|
5154
5361
|
@driver.action.context_click(el).perform
|
5155
5362
|
sleep(1)
|
@@ -5163,8 +5370,17 @@ rescue
|
|
5163
5370
|
begin
|
5164
5371
|
@driver.switch_to.default_content()
|
5165
5372
|
@driver.find_element(:xpath, '//*[@alt="자동등록방지"]').click
|
5166
|
-
|
5167
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)
|
5168
5384
|
el = @driver.find_element(:xpath, '//*[@alt="자동등록방지"]')
|
5169
5385
|
@driver.action.context_click(el).perform
|
5170
5386
|
sleep(1)
|
@@ -5178,8 +5394,17 @@ rescue
|
|
5178
5394
|
begin
|
5179
5395
|
@driver.switch_to.default_content()
|
5180
5396
|
@driver.find_element(:xpath, '//*[@id="captcha_img"]').click
|
5181
|
-
|
5182
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)
|
5183
5408
|
el = @driver.find_element(:xpath, '//*[@id="captcha_img"]')
|
5184
5409
|
@driver.action.context_click(el).perform
|
5185
5410
|
sleep(1)
|
@@ -5193,8 +5418,17 @@ rescue
|
|
5193
5418
|
begin
|
5194
5419
|
@driver.switch_to.default_content()
|
5195
5420
|
@driver.find_element(:xpath, '//*[@id="kcaptcha"]').click
|
5196
|
-
|
5197
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)
|
5198
5432
|
el = @driver.find_element(:xpath, '//*[@id="kcaptcha"]')
|
5199
5433
|
@driver.action.context_click(el).perform
|
5200
5434
|
sleep(1)
|
@@ -5208,8 +5442,17 @@ rescue
|
|
5208
5442
|
begin
|
5209
5443
|
@driver.switch_to.default_content()
|
5210
5444
|
@driver.find_element(:xpath, '//*[@for="kboard-input-captcha"]').click
|
5211
|
-
|
5212
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)
|
5213
5456
|
el = @driver.find_element(:xpath, '//*[@for="kboard-input-captcha"]')
|
5214
5457
|
@driver.action.context_click(el).perform
|
5215
5458
|
sleep(1)
|
@@ -5224,8 +5467,17 @@ rescue
|
|
5224
5467
|
@driver.switch_to.default_content()
|
5225
5468
|
sleep(1)
|
5226
5469
|
@driver.find_element(:xpath, '//*[@id="captcha_Write"]').click
|
5227
|
-
|
5228
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)
|
5229
5481
|
el = @driver.find_element(:xpath, '//*[@id="captcha_Write"]')
|
5230
5482
|
@driver.action.context_click(el).perform
|
5231
5483
|
sleep(1)
|
@@ -5239,8 +5491,17 @@ rescue
|
|
5239
5491
|
begin
|
5240
5492
|
@driver.switch_to.default_content()
|
5241
5493
|
@driver.find_element(:xpath, '//*[@image-reader="in-progress"]').click
|
5242
|
-
|
5243
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)
|
5244
5505
|
el = @driver.find_element(:xpath, '//*[@image-reader="in-progress"]')
|
5245
5506
|
@driver.action.context_click(el).perform
|
5246
5507
|
sleep(1)
|
@@ -5254,8 +5515,17 @@ rescue
|
|
5254
5515
|
begin
|
5255
5516
|
@driver.switch_to.default_content()
|
5256
5517
|
@driver.find_element(:xpath, '//*[@id="spamauth"]').click
|
5257
|
-
|
5258
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)
|
5259
5529
|
el = @driver.find_element(:xpath, '//*[@id="spamauth"]')
|
5260
5530
|
@driver.action.context_click(el).perform
|
5261
5531
|
sleep(1)
|
@@ -5269,8 +5539,17 @@ rescue
|
|
5269
5539
|
begin
|
5270
5540
|
@driver.switch_to.default_content()
|
5271
5541
|
@driver.find_element(:xpath, '//*[@id="norobot_img"]').click
|
5272
|
-
|
5273
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)
|
5274
5553
|
el = @driver.find_element(:xpath, '//*[@id="norobot_img"]')
|
5275
5554
|
@driver.action.context_click(el).perform
|
5276
5555
|
sleep(1)
|
@@ -5294,11 +5573,17 @@ end
|
|
5294
5573
|
##캡챠 이미지,2캡챠,,등등 코드 부분─────────────────────────────────────────────────────────────────────>
|
5295
5574
|
|
5296
5575
|
sleep(1)
|
5576
|
+
|
5297
5577
|
##캡챠 해제 입력 코드 부분─────────────────────────────────────────────────────────────────────>
|
5298
5578
|
puts '-[√] 캡챠 입력 항목 탐색.......'.green
|
5299
5579
|
begin
|
5300
5580
|
@driver.find_element(:xpath, '//*[@name="captcha_key"]').click
|
5581
|
+
|
5301
5582
|
sleep(1)
|
5583
|
+
mouse_move_percentage(0.3,0.02)
|
5584
|
+
sleep(0.5)
|
5585
|
+
left_click
|
5586
|
+
sleep(2)
|
5302
5587
|
el = @driver.find_element(:xpath, '//*[@name="captcha_key"]')
|
5303
5588
|
@driver.action.context_click(el).perform
|
5304
5589
|
sleep(1)
|
@@ -5332,7 +5617,12 @@ begin
|
|
5332
5617
|
rescue
|
5333
5618
|
begin
|
5334
5619
|
@driver.find_element(:xpath, '//*[@id="captcha_key"]').click
|
5620
|
+
|
5335
5621
|
sleep(1)
|
5622
|
+
mouse_move_percentage(0.3,0.02)
|
5623
|
+
sleep(0.5)
|
5624
|
+
left_click
|
5625
|
+
sleep(2)
|
5336
5626
|
el = @driver.find_element(:xpath, '//*[@id="captcha_key"]')
|
5337
5627
|
@driver.action.context_click(el).perform
|
5338
5628
|
|
@@ -5366,7 +5656,12 @@ rescue
|
|
5366
5656
|
rescue
|
5367
5657
|
begin
|
5368
5658
|
@driver.find_element(:xpath, '=//*[@id="code"]').click
|
5659
|
+
|
5369
5660
|
sleep(1)
|
5661
|
+
mouse_move_percentage(0.3,0.02)
|
5662
|
+
sleep(0.5)
|
5663
|
+
left_click
|
5664
|
+
sleep(2)
|
5370
5665
|
el = @driver.find_element(:xpath, '//*[@id="code"]')
|
5371
5666
|
@driver.action.context_click(el).perform
|
5372
5667
|
|
@@ -5400,7 +5695,12 @@ rescue
|
|
5400
5695
|
rescue
|
5401
5696
|
begin
|
5402
5697
|
@driver.find_element(:xpath, '//*[@id="kboard-input-captcha"]').click
|
5698
|
+
|
5403
5699
|
sleep(1)
|
5700
|
+
mouse_move_percentage(0.3,0.02)
|
5701
|
+
sleep(0.5)
|
5702
|
+
left_click
|
5703
|
+
sleep(2)
|
5404
5704
|
el = @driver.find_element(:xpath, '//*[@id="kboard-input-captcha"]')
|
5405
5705
|
@driver.action.context_click(el).perform
|
5406
5706
|
|
@@ -5434,7 +5734,12 @@ rescue
|
|
5434
5734
|
rescue
|
5435
5735
|
begin
|
5436
5736
|
@driver.find_element(:xpath, '//*[@fw-label="보안문자"]').click
|
5737
|
+
|
5437
5738
|
sleep(1)
|
5739
|
+
mouse_move_percentage(0.3,0.02)
|
5740
|
+
sleep(0.5)
|
5741
|
+
left_click
|
5742
|
+
sleep(2)
|
5438
5743
|
el = @driver.find_element(:xpath, '//*[@fw-label="보안문자"]')
|
5439
5744
|
@driver.action.context_click(el).perform
|
5440
5745
|
|
@@ -5468,7 +5773,12 @@ rescue
|
|
5468
5773
|
rescue
|
5469
5774
|
begin
|
5470
5775
|
@driver.find_element(:xpath, '//*[@name="captcha"]').click
|
5776
|
+
|
5471
5777
|
sleep(1)
|
5778
|
+
mouse_move_percentage(0.3,0.02)
|
5779
|
+
sleep(0.5)
|
5780
|
+
left_click
|
5781
|
+
sleep(2)
|
5472
5782
|
el = @driver.find_element(:xpath, '//*[@name="captcha"]')
|
5473
5783
|
@driver.action.context_click(el).perform
|
5474
5784
|
|
@@ -5502,7 +5812,12 @@ rescue
|
|
5502
5812
|
rescue
|
5503
5813
|
begin
|
5504
5814
|
@driver.find_element(:xpath, '//*[@id="spamCode"]').click
|
5815
|
+
|
5505
5816
|
sleep(1)
|
5817
|
+
mouse_move_percentage(0.3,0.02)
|
5818
|
+
sleep(0.5)
|
5819
|
+
left_click
|
5820
|
+
sleep(2)
|
5506
5821
|
el = @driver.find_element(:xpath, '//*[@id="spamCode"]')
|
5507
5822
|
@driver.action.context_click(el).perform
|
5508
5823
|
|
@@ -5536,7 +5851,12 @@ rescue
|
|
5536
5851
|
rescue
|
5537
5852
|
begin
|
5538
5853
|
@driver.find_element(:xpath, '//*[@id="norobot_code"]').click
|
5854
|
+
|
5539
5855
|
sleep(1)
|
5856
|
+
mouse_move_percentage(0.3,0.02)
|
5857
|
+
sleep(0.5)
|
5858
|
+
left_click
|
5859
|
+
sleep(2)
|
5540
5860
|
el = @driver.find_element(:xpath, '//*[@id="norobot_code"]')
|
5541
5861
|
@driver.action.context_click(el).perform
|
5542
5862
|
|
@@ -5571,7 +5891,12 @@ rescue
|
|
5571
5891
|
@driver.switch_to.default_content()
|
5572
5892
|
sleep(1)
|
5573
5893
|
@driver.find_element(:xpath, '//*[@name="kcaptcha_code"]').click
|
5894
|
+
|
5574
5895
|
sleep(1)
|
5896
|
+
mouse_move_percentage(0.3,0.02)
|
5897
|
+
sleep(0.5)
|
5898
|
+
left_click
|
5899
|
+
sleep(2)
|
5575
5900
|
el = @driver.find_element(:xpath, '//*[@name="kcaptcha_code"]')
|
5576
5901
|
@driver.action.context_click(el).perform
|
5577
5902
|
|
@@ -5640,10 +5965,10 @@ sleep(10)
|
|
5640
5965
|
@driver.find_element(:xpath, '//*[@data-state="error"]').click
|
5641
5966
|
puts '-[√] 1 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
5642
5967
|
puts '-[√] 2 캡챠 해제 실패 !! API번호 및 포인트를 체크해주세요.......'.red
|
5643
|
-
@driver.quit
|
5968
|
+
@driver.quit
|
5644
5969
|
rescue
|
5645
5970
|
# 타임아웃을 77초로 설정
|
5646
|
-
wait = Selenium::WebDriver::Wait.new(:timeout =>
|
5971
|
+
wait = Selenium::WebDriver::Wait.new(:timeout => 150)
|
5647
5972
|
# 요소가 나타날 때까지 100초 동안 기다립니다.
|
5648
5973
|
wait.until { @driver.find_element(:xpath, '//*[@data-state="solved"]') }
|
5649
5974
|
sleep(1)
|
@@ -5661,10 +5986,14 @@ end
|
|
5661
5986
|
##등록 버튼 코드 부분─────────────────────────────────────────────────────────────────────>
|
5662
5987
|
puts '-[√] HTML 버튼 복구 여부 체크.......'.yellow
|
5663
5988
|
begin
|
5989
|
+
@driver.find_element(:xpath, '//*[@aria-label="코드 보기"]').send_keys()
|
5990
|
+
sleep(1)
|
5664
5991
|
@driver.find_element(:xpath, '//*[@aria-label="코드 보기"]').click
|
5665
5992
|
sleep(1)
|
5666
5993
|
rescue
|
5667
5994
|
begin
|
5995
|
+
@driver.find_element(:xpath, '//*[@class="note-icon-code"]').send_keys()
|
5996
|
+
sleep(1)
|
5668
5997
|
@driver.find_element(:xpath, '//*[@class="note-icon-code"]').click
|
5669
5998
|
sleep(1)
|
5670
5999
|
rescue
|
@@ -5673,116 +6002,178 @@ rescue
|
|
5673
6002
|
end
|
5674
6003
|
##<─────────────────────────────────────────────────────────────────────캡챠 해제 입력 코드 부분
|
5675
6004
|
sleep(1)
|
5676
|
-
|
6005
|
+
@driver.action.key_down(:tab).key_up(:tab).perform #x탭
|
5677
6006
|
#@driver.execute_script("document.body.style.zoom = '0.70'")
|
5678
6007
|
sleep(1)
|
5679
6008
|
##등록 버튼 코드 부분─────────────────────────────────────────────────────────────────────>
|
5680
6009
|
puts '-[√] 내용 등록 버튼 탐색 시작.......'.yellow
|
5681
6010
|
########─────────────────────────────▼▼▼▼▼▼▼ 등록버튼 ▼▼▼▼▼▼▼──────────────────────────────#######
|
5682
6011
|
begin
|
5683
|
-
@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)
|
5684
6016
|
puts '-[√] 등록을 1번 코드로 시도하였습니다.......'.magenta
|
5685
6017
|
sleep(5)
|
5686
6018
|
rescue
|
5687
6019
|
begin
|
5688
|
-
@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)
|
5689
6024
|
puts '-[√] 등록을 2번 코드로 시도하였습니다.......'.magenta
|
5690
6025
|
sleep(5)
|
5691
6026
|
rescue
|
5692
6027
|
begin
|
5693
|
-
@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)
|
5694
6032
|
puts '-[√] 등록을 3번 코드로 시도하였습니다.......'.magenta
|
5695
6033
|
sleep(5)
|
5696
6034
|
rescue
|
5697
6035
|
begin
|
5698
|
-
@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)
|
5699
6039
|
puts '-[√] 등록을 4번 코드로 시도하였습니다.......'.magenta
|
5700
6040
|
sleep(5)
|
5701
6041
|
rescue
|
5702
6042
|
begin
|
5703
|
-
@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)
|
5704
6047
|
puts '-[√] 등록을 5번 코드로 시도하였습니다.......'.magenta
|
5705
6048
|
sleep(5)
|
5706
6049
|
rescue
|
5707
6050
|
begin
|
5708
|
-
@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)
|
5709
6055
|
puts '-[√] 등록을 6번 코드로 시도하였습니다.......'.magenta
|
5710
6056
|
sleep(5)
|
5711
6057
|
rescue
|
5712
6058
|
begin
|
5713
|
-
@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)
|
5714
6063
|
puts '-[√] 등록을 7번 코드로 시도하였습니다.......'.magenta
|
5715
6064
|
sleep(5)
|
5716
6065
|
rescue
|
5717
6066
|
begin
|
5718
|
-
@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)
|
5719
6071
|
puts '-[√] 등록을 8번 코드로 시도하였습니다.......'.magenta
|
5720
6072
|
sleep(5)
|
5721
6073
|
rescue
|
5722
6074
|
begin
|
5723
|
-
@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)
|
5724
6079
|
puts '-[√] 등록을 9번 코드로 시도하였습니다.......'.magenta
|
5725
6080
|
sleep(5)
|
5726
6081
|
rescue
|
5727
6082
|
begin
|
5728
|
-
@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)
|
5729
6087
|
puts '-[√] 등록을 10번 코드로 시도하였습니다.......'.magenta
|
5730
6088
|
sleep(5)
|
5731
6089
|
rescue
|
5732
6090
|
begin
|
5733
|
-
@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) #요소같고 텍스트가 다를때 텍스트로 타겟
|
5734
6095
|
puts '-[√] 등록을 11번 코드로 시도하였습니다.......'.magenta
|
5735
6096
|
sleep(5)
|
5736
6097
|
rescue
|
5737
6098
|
begin
|
5738
|
-
@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)
|
5739
6103
|
puts '-[√] 등록을 12번 코드로 시도하였습니다.......'.magenta
|
5740
6104
|
sleep(5)
|
5741
6105
|
rescue
|
5742
6106
|
begin
|
5743
|
-
@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)
|
5744
6111
|
puts '-[√] 등록을 13번 코드로 시도하였습니다.......'.magenta
|
5745
6112
|
sleep(5)
|
5746
6113
|
rescue
|
5747
6114
|
begin
|
5748
|
-
@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)
|
5749
6119
|
puts '-[√] 등록을 14번 코드로 시도하였습니다.......'.magenta
|
5750
6120
|
sleep(5)
|
5751
6121
|
rescue
|
5752
6122
|
begin
|
5753
|
-
@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)
|
5754
6127
|
puts '-[√] 등록을 15번 코드로 시도하였습니다.......'.magenta
|
5755
6128
|
sleep(5)
|
5756
6129
|
rescue
|
5757
6130
|
begin
|
5758
|
-
@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)
|
5759
6135
|
puts '-[√] 등록을 16번 코드로 시도하였습니다.......'.magenta
|
5760
6136
|
sleep(5)
|
5761
6137
|
rescue
|
5762
6138
|
begin
|
5763
|
-
@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)
|
5764
6143
|
puts '-[√] 등록을 17번 코드로 시도하였습니다.......'.magenta
|
5765
6144
|
sleep(5)
|
5766
6145
|
rescue
|
5767
6146
|
begin
|
5768
|
-
@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)
|
5769
6151
|
puts '-[√] 등록을 18번 코드로 시도하였습니다.......'.magenta
|
5770
6152
|
sleep(5)
|
5771
6153
|
rescue
|
5772
6154
|
begin
|
5773
|
-
@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)
|
5774
6159
|
puts '-[√] 등록을 19번 코드로 시도하였습니다.......'.magenta
|
5775
6160
|
sleep(5)
|
5776
6161
|
|
5777
6162
|
rescue
|
5778
6163
|
begin
|
5779
|
-
@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) #요소같고 텍스트가 다를때 텍스트로 타겟
|
5780
6168
|
puts '-[√] 등록을 20번 코드로 시도하였습니다.......'.magenta
|
5781
6169
|
sleep(5)
|
5782
6170
|
|
5783
6171
|
rescue
|
5784
6172
|
begin
|
5785
|
-
@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)
|
5786
6177
|
puts '-[√] 등록을 21시도하였습니다.......'.magenta
|
5787
6178
|
sleep(5)
|
5788
6179
|
|
@@ -5791,7 +6182,9 @@ rescue
|
|
5791
6182
|
begin
|
5792
6183
|
puts '-[√] 등록 버튼 코드 탐색에 실패하였습니다.......'.magenta
|
5793
6184
|
puts '-[√] 다른 방법으로 등록을 시도 합니다.......'.magenta
|
5794
|
-
|
6185
|
+
@driver.action.send_keys(:page_up).perform #스크롤 내리기
|
6186
|
+
sleep(1)
|
6187
|
+
@driver.find_element(:xpath, '//*[@id="wr_subject"]').send_keys()
|
5795
6188
|
sleep(1)
|
5796
6189
|
@driver.find_element(:xpath, '//*[@id="wr_subject"]').click
|
5797
6190
|
sleep(1)
|
@@ -5800,6 +6193,8 @@ rescue
|
|
5800
6193
|
sleep(5)
|
5801
6194
|
rescue
|
5802
6195
|
begin
|
6196
|
+
@driver.find_element(:xpath, '//*[@fw-label="제목"]').send_keys()
|
6197
|
+
sleep(1)
|
5803
6198
|
@driver.find_element(:xpath, '//*[@fw-label="제목"]').click
|
5804
6199
|
sleep(1)
|
5805
6200
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5807,6 +6202,8 @@ rescue
|
|
5807
6202
|
sleep(5)
|
5808
6203
|
rescue
|
5809
6204
|
begin
|
6205
|
+
@driver.find_element(:xpath, '//*[@name="subject"]').send_keys()
|
6206
|
+
sleep(1)
|
5810
6207
|
@driver.find_element(:xpath, '//*[@name="subject"]').click
|
5811
6208
|
sleep(1)
|
5812
6209
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5814,6 +6211,8 @@ rescue
|
|
5814
6211
|
sleep(5)
|
5815
6212
|
rescue
|
5816
6213
|
begin
|
6214
|
+
@driver.find_element(:xpath, '//*[@name="title"]').send_keys()
|
6215
|
+
sleep(1)
|
5817
6216
|
@driver.find_element(:xpath, '//*[@name="title"]').click
|
5818
6217
|
sleep(1)
|
5819
6218
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5821,6 +6220,8 @@ rescue
|
|
5821
6220
|
sleep(5)
|
5822
6221
|
rescue
|
5823
6222
|
begin
|
6223
|
+
@driver.find_element(:xpath, '//*[@id="wr_title"]').send_keys()
|
6224
|
+
sleep(1)
|
5824
6225
|
@driver.find_element(:xpath, '//*[@id="wr_title"]').click
|
5825
6226
|
sleep(1)
|
5826
6227
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5828,6 +6229,8 @@ rescue
|
|
5828
6229
|
sleep(5)
|
5829
6230
|
rescue
|
5830
6231
|
begin
|
6232
|
+
@driver.find_element(:xpath, '//*[@id="title"]').send_keys()
|
6233
|
+
sleep(1)
|
5831
6234
|
@driver.find_element(:xpath, '//*[@id="title"]').click
|
5832
6235
|
sleep(1)
|
5833
6236
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5835,6 +6238,8 @@ rescue
|
|
5835
6238
|
sleep(5)
|
5836
6239
|
rescue
|
5837
6240
|
begin
|
6241
|
+
@driver.find_element(:xpath, '//*[@id="postTitle"]').send_keys()
|
6242
|
+
sleep(1)
|
5838
6243
|
@driver.find_element(:xpath, '//*[@id="postTitle"]').click
|
5839
6244
|
sleep(1)
|
5840
6245
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5842,6 +6247,8 @@ rescue
|
|
5842
6247
|
sleep(5)
|
5843
6248
|
rescue
|
5844
6249
|
begin
|
6250
|
+
@driver.find_element(:xpath, '//*[@title="input"]').send_keys()
|
6251
|
+
sleep(1)
|
5845
6252
|
@driver.find_element(:xpath, '//*[@title="input"]').click
|
5846
6253
|
sleep(1)
|
5847
6254
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5849,6 +6256,8 @@ rescue
|
|
5849
6256
|
sleep(5)
|
5850
6257
|
rescue
|
5851
6258
|
begin
|
6259
|
+
@driver.find_element(:xpath, '//*[@name="wr_subject"]').send_keys()
|
6260
|
+
sleep(1)
|
5852
6261
|
@driver.find_element(:xpath, '//*[@name="wr_subject"]').click
|
5853
6262
|
sleep(1)
|
5854
6263
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5856,6 +6265,8 @@ rescue
|
|
5856
6265
|
sleep(5)
|
5857
6266
|
rescue
|
5858
6267
|
begin
|
6268
|
+
@driver.find_element(:xpath, '//*[@name="post_title"]').send_keys()
|
6269
|
+
sleep(1)
|
5859
6270
|
@driver.find_element(:xpath, '//*[@name="post_title"]').click
|
5860
6271
|
sleep(1)
|
5861
6272
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5863,6 +6274,8 @@ rescue
|
|
5863
6274
|
sleep(5)
|
5864
6275
|
rescue
|
5865
6276
|
begin
|
6277
|
+
@driver.find_element(:xpath, '//*[@title="제목"]').send_keys()
|
6278
|
+
sleep(1)
|
5866
6279
|
@driver.find_element(:xpath, '//*[@title="제목"]').click
|
5867
6280
|
sleep(1)
|
5868
6281
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5870,6 +6283,8 @@ rescue
|
|
5870
6283
|
sleep(5)
|
5871
6284
|
rescue
|
5872
6285
|
begin
|
6286
|
+
@driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').send_keys()
|
6287
|
+
sleep(1)
|
5873
6288
|
@driver.find_element(:xpath, '//*[@placeholder="제목을 입력하세요"]').click
|
5874
6289
|
sleep(1)
|
5875
6290
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5877,6 +6292,8 @@ rescue
|
|
5877
6292
|
sleep(5)
|
5878
6293
|
rescue
|
5879
6294
|
begin
|
6295
|
+
@driver.find_element(:xpath, '//*[@placeholder="제목"]').send_keys()
|
6296
|
+
sleep(1)
|
5880
6297
|
@driver.find_element(:xpath, '//*[@placeholder="제목"]').click
|
5881
6298
|
sleep(1)
|
5882
6299
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5884,6 +6301,8 @@ rescue
|
|
5884
6301
|
sleep(5)
|
5885
6302
|
rescue
|
5886
6303
|
begin
|
6304
|
+
@driver.find_element(:xpath, '//*[@hname="제목"]').send_keys()
|
6305
|
+
sleep(1)
|
5887
6306
|
@driver.find_element(:xpath, '//*[@hname="제목"]').click
|
5888
6307
|
sleep(1)
|
5889
6308
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5891,6 +6310,8 @@ rescue
|
|
5891
6310
|
sleep(5)
|
5892
6311
|
rescue
|
5893
6312
|
begin
|
6313
|
+
@driver.find_element(:xpath, '//*[@id="post_subject"]').send_keys()
|
6314
|
+
sleep(1)
|
5894
6315
|
@driver.find_element(:xpath, '//*[@id="post_subject"]').click
|
5895
6316
|
sleep(1)
|
5896
6317
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5898,6 +6319,8 @@ rescue
|
|
5898
6319
|
sleep(5)
|
5899
6320
|
rescue
|
5900
6321
|
begin
|
6322
|
+
@driver.find_element(:xpath, '//*[@id="search_bar"]').send_keys()
|
6323
|
+
sleep(1)
|
5901
6324
|
@driver.find_element(:xpath, '//*[@id="search_bar"]').click
|
5902
6325
|
sleep(1)
|
5903
6326
|
@driver.action.key_down(:enter).key_up(:enter).perform #엔터
|
@@ -5983,6 +6406,7 @@ rescue
|
|
5983
6406
|
ff.write('【등록실패내용:')
|
5984
6407
|
ff.write(error_text)
|
5985
6408
|
ff.write('】')
|
6409
|
+
ff.close()
|
5986
6410
|
puts '-[√] 로그 파일 생성 완료.......'.yellow
|
5987
6411
|
end
|
5988
6412
|
|