nblog_zon 111.117.899 → 111.119.999
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/nblog_zon.rb +88 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1ea92559030bbf7a4e0766496bcc9aeb51f8f214f9152a0f720c5850f05d7916
|
4
|
+
data.tar.gz: 211fce5304e0fa5536f0aa5d02a5bb93f942ec6dee1cdc4481164367f482acd6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 05a8d6cf07bf01ae65db54c2ef436a71955f4d17ca9e1da4e4ae01115563917d7c71f59888ea7697b8d7c065561115a54afa1c6d842e465d0bcb485ec0d81ec7
|
7
|
+
data.tar.gz: 9c71fc7524a3c137c7dbaf1a6b22f4278c64f61e24e022717b490f436591c8e397aa8ffa10e4f837f0850a1b1309676a88473585304817892b2f4f7397416c98
|
data/lib/nblog_zon.rb
CHANGED
@@ -18,7 +18,7 @@ require 'digest'
|
|
18
18
|
require 'auto_click'
|
19
19
|
require 'rainbow/refinement'
|
20
20
|
require 'httpclient'
|
21
|
-
require 'win32ole'
|
21
|
+
#require 'win32ole'
|
22
22
|
include AutoClickMethods
|
23
23
|
using Rainbow
|
24
24
|
include Glimmer
|
@@ -1380,6 +1380,32 @@ class Naver
|
|
1380
1380
|
end
|
1381
1381
|
|
1382
1382
|
|
1383
|
+
elsif i2.to_s.include?('<clip_number')
|
1384
|
+
# <clip_number> 태그에서 값을 추출하여 clip_123 배열에 저장 (중복 제거)
|
1385
|
+
clip_123 = i2.to_s.scan(/<clip_number>(\d+)<\/clip_number>/).flatten.uniq
|
1386
|
+
|
1387
|
+
# 내 클립 버튼 클릭
|
1388
|
+
@driver.find_element(:xpath, '//*[@type="button" and @data-name="moment" and @data-log="dot.moment"]').click
|
1389
|
+
sleep(2)
|
1390
|
+
|
1391
|
+
# clip_123에 있는 모든 번호를 사용하여 클립을 선택하고 삽입
|
1392
|
+
clip_123.each do |clip_number|
|
1393
|
+
# clip_number - 1을 사용하여 data-index에 맞는 클립을 클릭
|
1394
|
+
@driver.find_element(:xpath, "//*[@class='se-sidebar-element se-sidebar-element-moment' and @data-index='#{clip_number.to_i - 1}']").click
|
1395
|
+
sleep(2)
|
1396
|
+
end
|
1397
|
+
|
1398
|
+
# 클립 창 닫기
|
1399
|
+
@driver.find_element(:xpath, '//*[@type="button" and @class="se-sidebar-close-button"]').click
|
1400
|
+
sleep(2)
|
1401
|
+
|
1402
|
+
# 본문 입력 탭 닫기 1
|
1403
|
+
@driver.find_element(:xpath, '//*[@type="button" and @data-type="toggle" and @data-name="bold"]').click
|
1404
|
+
sleep(1)
|
1405
|
+
|
1406
|
+
# 본문 입력 탭 닫기 2
|
1407
|
+
@driver.find_element(:xpath, '//*[@type="button" and @data-type="toggle" and @data-name="bold"]').click
|
1408
|
+
sleep(1)
|
1383
1409
|
|
1384
1410
|
|
1385
1411
|
elsif i2.to_s.include?('<inyonggoo')
|
@@ -3277,6 +3303,51 @@ class Wordpress
|
|
3277
3303
|
@data['table'] << []
|
3278
3304
|
@data['table'].pop
|
3279
3305
|
|
3306
|
+
##여기서부터 클립####-------------------------------------------------------------------------------
|
3307
|
+
if @data['포스트설정']['클립적용'].checked?
|
3308
|
+
clip_word = @data['포스트설정']['클립단어'].text.to_s.force_encoding('utf-8')
|
3309
|
+
clip_123 = @data['포스트설정']['클립넘버'].text.to_s.force_encoding('utf-8').split(',')
|
3310
|
+
|
3311
|
+
# content를 줄 단위로 분리
|
3312
|
+
content_lines = content.split("\n")
|
3313
|
+
new_lines = []
|
3314
|
+
|
3315
|
+
content_lines.each do |line|
|
3316
|
+
processed = false
|
3317
|
+
|
3318
|
+
# 1. 클립 단어 패턴 처리: 클립 단어를 <clip_number>로 감싸기
|
3319
|
+
if line.include?(clip_word)
|
3320
|
+
# 클립 단어를 <clip_number> 태그로 감싸기
|
3321
|
+
parts = line.split(clip_word, 2)
|
3322
|
+
prefix = parts[0]
|
3323
|
+
suffix = parts[1]
|
3324
|
+
|
3325
|
+
# 클립 넘버를 순차적으로 적용
|
3326
|
+
clip_number = clip_123.shift || clip_123.last
|
3327
|
+
|
3328
|
+
open_tag = prefix[/<p[^>]*?>/i] || ""
|
3329
|
+
close_tag = suffix[/<\/p>/i] || ""
|
3330
|
+
|
3331
|
+
prefix_text = prefix.sub(open_tag, '')
|
3332
|
+
suffix_text = suffix.sub(close_tag, '')
|
3333
|
+
|
3334
|
+
# 새로운 라인으로 변경
|
3335
|
+
new_lines << "#{open_tag}#{prefix_text}</p>" unless prefix_text.strip.empty?
|
3336
|
+
new_lines << "<clip_number>#{clip_number}</clip_number>"
|
3337
|
+
new_lines << "#{open_tag}#{suffix_text}#{close_tag}" unless suffix_text.strip.empty?
|
3338
|
+
|
3339
|
+
processed = true
|
3340
|
+
end
|
3341
|
+
|
3342
|
+
# 변경이 없었으면 원래 줄 추가
|
3343
|
+
new_lines << line unless processed
|
3344
|
+
end
|
3345
|
+
|
3346
|
+
content = new_lines.join("\n")
|
3347
|
+
end
|
3348
|
+
######-------------------------------------------------------------------------------
|
3349
|
+
|
3350
|
+
|
3280
3351
|
|
3281
3352
|
|
3282
3353
|
if @data['포스트설정']['단어링크적용'].checked?
|
@@ -5418,6 +5489,22 @@ class Wordpress
|
|
5418
5489
|
left 1
|
5419
5490
|
text 'api key 입력 필수!!'
|
5420
5491
|
}
|
5492
|
+
|
5493
|
+
@data['포스트설정']['클립적용'] = checkbox('클립 내용에 넣기'){
|
5494
|
+
top 16+ aa1
|
5495
|
+
left 0
|
5496
|
+
}
|
5497
|
+
|
5498
|
+
@data['포스트설정']['클립단어'] = entry(){
|
5499
|
+
top 16+ aa1
|
5500
|
+
left 1
|
5501
|
+
text '특정단어'
|
5502
|
+
}
|
5503
|
+
@data['포스트설정']['클립넘버'] = entry(){
|
5504
|
+
top 16+ aa1
|
5505
|
+
left 3
|
5506
|
+
text '클립넘버 ex)1,2,3'
|
5507
|
+
}
|
5421
5508
|
|
5422
5509
|
}
|
5423
5510
|
}
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nblog_zon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 111.
|
4
|
+
version: 111.119.999
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- zon
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-
|
10
|
+
date: 2025-06-19 00:00:00.000000000 Z
|
11
11
|
dependencies: []
|
12
12
|
description: File to Clipboard gem
|
13
13
|
email: rnjstnswp123@naver.com
|