nblog_duo 0.0.97 → 0.0.99
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_duo.rb +35 -8
- 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: ec06f20ed3980c7c49c5c178e0c21082ab6e7df7bde986b58a8dc177480c4664
|
4
|
+
data.tar.gz: 0caa65264dbac225a9962e39e3002751d0b3bca3fed3e49f36de8fcd0dfe10d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d46e2a31e7e64eba35b5033a622ba88a35d3395e31e6945afde4555968bf7b46593be6a07e93f360bfb04a9a610ca01b2abd23775e0d2a7ef7a4dc0f41dde0de
|
7
|
+
data.tar.gz: 5ae5f82f920ffd50b9596c346cbc553ae8b0242da9382f3c5610e93832db5e858947fb05ffdbb8652f4be2ffac3fa2e752406fd5247688bafcef7683f571bad7
|
data/lib/nblog_duo.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'glimmer-dsl-libui'
|
2
2
|
require 'selenium-webdriver'
|
3
|
-
|
3
|
+
require 'webdrivers'
|
4
4
|
require 'iconv'
|
5
5
|
require 'nokogiri'
|
6
6
|
require 'http'
|
@@ -241,7 +241,26 @@ end
|
|
241
241
|
class Naver
|
242
242
|
def initialize
|
243
243
|
@seed = 1
|
244
|
+
|
245
|
+
begin
|
246
|
+
# webdrivers가 사용자의 Chrome 버전에 맞는 chromedriver 다운로드 시도
|
247
|
+
|
248
|
+
|
249
|
+
# 크롬드라이버 자동 업데이트 시도
|
250
|
+
Webdrivers::Chromedriver.update
|
251
|
+
puts "chromedriver 자동 다운로드 성공"
|
252
|
+
rescue => e
|
253
|
+
puts "chromedriver 자동 다운로드 실패: #{e.message}"
|
254
|
+
puts "폴더내 크롬드라이버를 사용합니다."
|
255
|
+
puts "크롬드라이버가 오래된 경우 오류 발생될 수 있으며, 만일 오류 발생시 아래 지침을 따라주세요."
|
256
|
+
puts "1.크롬 업데이트 2.프로그램 폴더 내부에 ★tip★-시작시-크롬창이....파일을 열어 드라이버를 교체하세요."
|
257
|
+
chromedriver_path = './chromedriver.exe' # 수동 경로를 인스턴스 변수로 설정
|
258
|
+
Selenium::WebDriver::Chrome::Service.driver_path = chromedriver_path
|
259
|
+
end
|
260
|
+
|
244
261
|
end
|
262
|
+
|
263
|
+
|
245
264
|
def chrome_setup(user_id, proxy)
|
246
265
|
naver_cookie_dir = "C:/naver_cookie"
|
247
266
|
FileUtils.mkdir_p(naver_cookie_dir) unless File.exist?(naver_cookie_dir)
|
@@ -260,10 +279,9 @@ class Naver
|
|
260
279
|
FileUtils.mkdir_p(naver_cookie_dir) unless File.exist?(naver_cookie_dir)
|
261
280
|
if proxy == ''
|
262
281
|
begin
|
263
|
-
Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
264
282
|
options = Selenium::WebDriver::Chrome::Options.new
|
265
283
|
options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
|
266
|
-
options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
|
284
|
+
#options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
|
267
285
|
options.add_argument('--disable-sync') # Chrome 동기화 비활성화
|
268
286
|
options.add_argument('--disable-popup-blocking') # 팝업 방지 (로그인 창이 뜨는 경우 대비)
|
269
287
|
options.add_argument('--no-default-browser-check')
|
@@ -288,7 +306,7 @@ class Naver
|
|
288
306
|
end
|
289
307
|
else
|
290
308
|
begin
|
291
|
-
Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
309
|
+
#Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
292
310
|
options = Selenium::WebDriver::Chrome::Options.new
|
293
311
|
options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
|
294
312
|
options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
|
@@ -315,7 +333,7 @@ class Naver
|
|
315
333
|
puts e
|
316
334
|
puts 'proxy error...'
|
317
335
|
begin
|
318
|
-
Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
336
|
+
#Selenium::WebDriver::Chrome::Service.driver_path = './chromedriver.exe'
|
319
337
|
options = Selenium::WebDriver::Chrome::Options.new
|
320
338
|
options.add_argument('--no-first-run') # 자동 실행 시 나타나는 "첫 실행" 화면 방지
|
321
339
|
options.add_argument('--disable-extensions') # 확장 프로그램 초기화 화면 방지
|
@@ -347,7 +365,6 @@ class Naver
|
|
347
365
|
|
348
366
|
|
349
367
|
|
350
|
-
|
351
368
|
def login(user_id, user_pw, proxy)
|
352
369
|
@user_id = user_id
|
353
370
|
@user_id11 = user_id
|
@@ -3462,9 +3479,19 @@ class Wordpress
|
|
3462
3479
|
option['검색허용'] = 'false'
|
3463
3480
|
end
|
3464
3481
|
|
3482
|
+
#if @data['포스트설정']['내용첫줄제목에입력'].checked?
|
3483
|
+
# title = content.split("\n")[0]
|
3484
|
+
#end
|
3465
3485
|
if @data['포스트설정']['내용첫줄제목에입력'].checked?
|
3466
|
-
|
3467
|
-
|
3486
|
+
# 콘텐츠를 줄 단위로 분리
|
3487
|
+
content_lines = content.split("\n")
|
3488
|
+
|
3489
|
+
# 첫 번째 줄이 <img src=로 시작하는지 확인하고, 시작하는 경우 두 번째 줄부터 확인
|
3490
|
+
title = content_lines.find { |line| !line.start_with?('<img src=') }
|
3491
|
+
|
3492
|
+
# 만약 첫 번째 줄부터 <img src=로 시작하는 경우, 두 번째 줄을 제목으로 설정
|
3493
|
+
title ||= content_lines[1] # 첫 번째 줄이 <img src=일 경우 두 번째 줄을 사용
|
3494
|
+
|
3468
3495
|
end
|
3469
3496
|
|
3470
3497
|
if @data['포스트설정']['제목을내용첫줄입력'].checked?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nblog_duo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.99
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- zon
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: File to Clipboard gem
|
14
14
|
email: mymin26@naver.com
|