KurtBestor / Hitomi-Downloader

:cake: Desktop utility to download images/videos/music/text from various websites, and more.
22.16k stars 2.05k forks source link

avsogirl 스크립트를 업데이트 해주실 수 있으시나요? #5547

Open 5h47m opened 1 year ago

5h47m commented 1 year ago

저는 avsogirl 영상을 다운 받고 싶어 다운로더를 찾다가, 놀랍게도 히토미 다운로더가 스크립트란 기능으로 그것을 지원한다는 사실을 알게 되었습니다.

하여 스크립트를 다운 받아서 스크립트를 적용 시킨 뒤, 링크를 입력해 보았으나.

링크를 인식하지 못하고 그대로 빨간 메시지가 나타났습니다. 아예 인식도 못하는 것이 뭔가 이상하다 싶어 스크립트를 열어보니

coding: utf8

title: AVSoGirl 사이트 추가

author: Kurt Bestor

import downloader from utils import Downloader, getext import json from translator import tr

@Downloader.register class Downloader_sogirl(Downloader): type = 'sogirl' URLS = ['.sogirl.co'] single = True

def read(self):
    soup = downloader.read_soup(self.url)

    title = soup.find('meta', {'property': 'og:title'})['content'].strip()

    playlist = soup.find('div', class_='fp-playlist-external')
    srcs = []
    for a in playlist.findAll('a'):
        data = a.get('data-item')
        if not data:
            continue
        data = json.loads(data)
        for src in data['sources']:
            if src.get('fv_title'): # Ad
                continue
            srcs.append(src['src'])

    url_video = srcs[0]
    self.urls.append(url_video)
    self.filenames[url_video] = '{}{}'.format(clean_title(title), get_ext(url_video))
    self.referer = self.url

    self.title = title

messageBox(u'{}: AVSogirl'.format(tr_(u'사이트를 추가했습니다')))

현 주소가 sogirl.so인 반면 구 주소인 co로 되어있던 것 이었습니다. 하지만 안타깝게도 저 단어 하나만 고쳐서 간단하게 해결 되지는 않았고 어쩔 수 없이 저는 sogirl사이트와 관련되어 지금까지 올라온 18개의 이슈를 전부 둘러보고, 그러다 주소가 sogirl.so로 되어 있는 스크립트를 발견하여 적용 시켜 보았습니다. 아래는 그 스크립트 입니다.

import clf2 from utils import * import json

@Downloader.register class Downloader_sogirl(Downloader): type = 'sogirl' URLS = ['.sogirl.so'] single = True

def read(self):
    html = self.get_page()

    soup = Soup(html)
    title = soup.find('meta', {'property': 'og:title'})['content'].strip()

    playlist = soup.find('div', class_='fp-playlist-external')

    try:
        srcs = []
        for a in playlist.findAll('a'):
            data = a.get('data-item')
            if not data:
                continue
            data = json.loads(data)
            for src in data['sources']:
                if src.get('fv_title'): # Ad
                    continue
                srcs.append(src['src'])

        url_video = srcs[0]
        self.urls.append(url_video)
        self.filenames[url_video] = '{}{}'.format(clean_title(title), get_ext(url_video))
        self.referer = self.url

        self.title = title
    except:
        self.print_('No data found')

@try_n(16)
def get_page(self):
    html = clf2.solve(self.url)

    if '502: Bad gateway' in html['html']:
        self.print_(f'Cloudflare Bad Gateway Error Occured')
        raise Exception('bad gateway')

    return html['html']

log('sogirl script loaded')

그리곤 떨리는 마음으로 다시 다운로드를 누르자, 이번엔 제대로 인식도 하고 로딩 스피너도 나타났기에 드디어 다운이 되는 건가 하며 속으로 쾌재를 외쳤으나...

다시 빨간 글귀가 나타났습니다.

아래는 다운로드 정보를 통해 확인한 오류 내용입니다.

Invalid: [sogirl] https://kr45.sogirl.so/ssni-679-%ec%b9%b4%eb%85%b8-%ec%9c%a0%eb%9d%bc-%ec%9e%90%eb%a7%89/

version: 3.8 (22-12-16 05:11:43 UTC) platform / locale: Windows-10-10.0.19041-SP0 / ko_kr order / group / uid: 0 / False / 44bd65adaf434f0d9de002fd188c1033 input: https://kr45.sogirl.so/ssni-679-%ec%b9%b4%eb%85%b8-%ec%9c%a0%eb%9d%bc-%ec%9e%90%eb%a7%89/ type: sogirl single: True url: https://kr45.sogirl.so/ssni-679-%ec%b9%b4%eb%85%b8-%ec%9c%a0%eb%9d%bc-%ec%9e%90%eb%a7%89/ dir: zip: artist: None valid / done: False / True range / range_p: None / None time: 1671374736.204653 (22-12-18 14:45:36 UTC) - 27s elapsed tags: [] lock: False color: invalid paused: False format: None p2f: None segment: None admin: True goodbyedpi: True ytdl: yt_dlp 2022.11.11 pinned: False extras: {} live: False changed: True

[Gallery] None

[File Names]

[URLs]

[Messages] No data found empty urls stop Traceback (most recent call last): File "utils", line 1278, in start File "utils", line 1368, in start_ Exception: empty urls

Invalid: fail=True quality: 75% EOT: https://kr45.sogirl.so/ssni-679-%ec%b9%b4%eb%85%b8-%ec%9c%a0%eb%9d%bc-%ec%9e%90%eb%a7%89/ (19.6s)

coding: utf8

title: AVSoGirl 사이트 추가 - 수정

author: Kurt Bestor (이후 수정됨)

discription: 12022-01-30 수정

저는 이 분야에 발을 내딘 적도 없기에 스크립트 짜는 법을 정독 했음에도 도저히 스크립트를 새로이 짤 능력이 되지는 않았습니다.

하여 실례가 되지 않는다면 부디 여유가 되실 때 sogirl 사이트 스크립트를 현 사이트에 맞게 업데이트 해주시어 제게 크나큰 은혜를 입혀주신다면 크나큰 감사를 드리겠습니다.

긴글 읽어주심에 다시 한번 감사를 표하고. 귀하와 이 프로그램에 무궁한 발전을 기원드립니다.

rickmiron commented 9 months ago

plugin: https://github.com/rickmiron/variado/blob/main/sogirl.py