히토미 다운로더용 케모노 다운로드 스크립트
얼마전 케모노 주소가 변경되면서 기존 히토미 다운로더 개발자의 케모노용 스크립트가 동작하지 않길래 간단하게 수정해봄
원 개발자가 바쁜지 히토미 다운로더 업데이트가 좀 늦는감이 있는데 어쩔수 있나 목마른놈이 우물 파야지
aHR0cHM6Ly9raW8uYWMvYy9ib2JNTmdFTExETnZiWVlSY19JUEdi
키오에 파일 두개 업로드 했는데, 두개는 같은거고 브라우저나 안티바이러스가 의심파일이라며 다운로드 거절하는 경우가 있어서 두개 올림
변경점은 hds용 시그니쳐 삭제, 케모노 cr 도메인 추가 끝
귀찮으면 아래 코드 복사해서 플러그인 추가 해도 됨
#coding: utf8
#title: Kemono.Party 추가
#title_en: Add Kemono.Party
#comment: https://kemono.party
#author: Kurt Bestor
import downloader
from utils import Downloader, Session, Soup, LazyUrl, urljoin, get_ext, clean_title, get_print, print_error
import clf2
from translator import tr_
from ratelimit import limits, sleep_and_retry
class Image:
def __init__(self, url, referer, p):
self._url = url
self._p = p
self.url = LazyUrl(referer, self.get, self)
@sleep_and_retry
@limits(1, 5)
def get(self, _):
ext = get_ext(self._url) or downloader.get_ext(self._url)
self.filename = '{:04}{}'.format(self._p, ext)
return self._url
@Downloader.register
class Downloader_kemonoparty(Downloader):
type = 'kemono.party'
URLS = ['kemono.party', 'kemono.su', 'kemono.cr']
icon = 'base64:iVBORw0KGgoAAAANSUhEUgAAACAAAAAfCAYAAACGVs+MAAAH+0lEQVRIx72XaWxcVxXHf/ctM/Nm8YyX2mPHdrzGSYjrpNlJ2zRLgSSloi2bRCtQ+VChVCKRqEIFH6gECEpoUUJLS1JamqJAiwCBWoUKke5KuuA2zVbHbhLHdsbLjD3zPDNv3nb5YDtK1RQ7EnCk++Hp3nfO/5z7P//zHsD3gfWA4P9jmoAdwNNAEGB7Iqj2xYPqt4GyT3qrZUGMlgWxmUcBtAJhIAQ0zTEBoyqs7eqsNnK6Ku4PaVOvNN/QED31vXW1bkdl6C/AdZ/kLBzRIkJQC2jAk8CtwE3AM9PZxKcBXckqkhF9zw9urCvdu6J6ElgvBKjAhISOe5Zfs2ZbW3xh3vG39Odsx/HlKcAGaJgfJZe1kTDf9+ReYERXxPKAqqxVBY26KtpdnyPAT4GzwODlpQLmt5UH9963Nvn1WzsS2u9PZD7oHS89BORVVQgmSp7XEA/csaIuoi9NRuJN8eDmCzlncabo9oBI+W5A2I5NNK5nnZK3psLQ7osG1Pi1NcbqeEhbUhHSdNdnoxBUOL7cCxQBAqrAkyy9Lhnet2td7ZaOypAYzrscOJ5+YdzyDgKocgphRhVs3thUVv/GwCTNiaD6+QWJRXnH/1x/1rYLpdIpwC5ZnpSQWl4b/kZntdG6vrFMW1pjBDRFJFrLQ/W9mdL+RVWhQ6m8C4AnuXlTU2zfdz9du2LAdIiHVPrGS/LZk+N7DU3pdnyJCrBmXsQ6MWbVrqmPbryxMcb+7jEmbZ97ll+TSEb1zX0Tpc5sybsI1JcF1a8urQmv3LG6JrQsGaazxmB5bQQB9GQsoydT0lxfZnRF3PLFReW/3Lk62XKoL4sEtrbG+cPJzOg7Fws/cXw5AlMcYNB0sFyZrzS027e1JcJLqsP87nia1/rz3NlZqfmShUcH818A7owF1ZvuWFQRWlkbodzQUBVBWFdorwixqTlWv6AytEVXlNs3NpfdfndXVdX+7lFG8i7fWVvLpO3zm3fH3hownUcA5xKAaRt3fbn2hsZoR0siSFdNmMfeGeWF3iy3LSyn6PpGf9YOTdo+r/abdKcKRAMq9bEAAU1BAvGQSmdNWNnUHItf3xALPt49xtPH0uxYVcOKujD/uljgwPvpg9va4odOjllcDkADEhnLUxZXGdu6asJiJO/yzPEMy5Jhvrmsiq1tcaIBldNjFqbtcz5r8+KHOU6nLSoNlbqojqYoeFKiKQJdFWiK4JV+k1hAZXNznL+dmbBe6M3u7smUzvjT5JsBEAEe9iXNuqI0fKalzBgwbYZMhwfW11EV1ghqCqvrIixLRhgwbQZNG9uT9GQsXvwwx/msQzKqUx3R0YTAl5CM6kR0hdNpi4Sh8dypTP/ZCft1X7INeA+wxYwcAhsrDe2p9opg9Y821FMb1ck7Hg1lAWbQAqhCMFpweOLdMZ56L8245V7aq4nobG2LU25oDJo2qUmH4bzDYM7BR1J0/IwvmQB+DTwISAFsBb4V0kQ6oqsrv7K4fPHdS6uoLwsgAXlZ8EviIsCX8Eq/yYNvpOhOFeagwgCUgKNC8LiUVAFHVWAIcGIB9cvrm2KfWj0vSldNGFX5z9IugPbyEK3lQQ71ZbFcecVz7RUhbm4u45b2BMmIrs2LBZITlruh6Mo88E8NWAU0qULki44vm+IBEZpm9Wzm+pLOaoNlyTCHz5kf229JBHl0SyNLrjFQhODo4CS7j6QCRUe+CvwKGFKATmCppgjd8/FM259rOZFAJKByc3P8Y9MrqAq2r6jm2uowEvClRALz40FZHdE2APuAXQqwB9iZLrrHPSlFT8Zi0HQu3fWsIKTkxsYoreVBdEVcArK1LcFtCxP4UqIIMG2PkbzDqbGiO5CznwS+BOxWgSjwQ1WIzkzR7TZtv1EIdNeXBDWFiK7MWoV4SGNdQ5RNzWXc0BhjVV2Eu66tpCaiowjBkOlwcrTIb4+lnZztj4xb3mJPkgFeFUyJUCNTA2nHgsrQTrPkjW1rTzSPFVz/xxvmqWVBdVZOKEIww9uZkgsgNelw+JzJwRMZK6AK8dqFyfuB94Ek8CcV8IFxoFLCvWMFd7cnSV0wnaZ3U4WD82KBrq5kWJ0NwFTQqTXTup6E3UeGnb/3ZcWZTOnpCzmn1/PlMuAXwJuAc/kscIGXBRy2fbk5V/J6PMkDowV35aq6aEtVWJtTZ8yYKgRvDeXZ8+bIsx9krKGSJ/tcX+5i6lvhHFCAjw4jd7oSACPAy5oiUkOTTkpXxS3rGqKGMhdWMqURRU+y563hi69fmNwOvD0d8J3p8l9SLvUTfIwA2WkJ7h80ndqOytDqtorQFZXxY9krgpfO53j07dHHCo7/DHAeOH5F7swhITc16ew58H765FjBmbU1BZC1XJ47Od4zWnD3MUWPmXX1ABRFYUF5sPelc+bDfz49Yc96Xgj+cTYnD583n7hrScWZWas12wEpJWnLw5OcGc67Xctrwx01kcAV0xECRvIuPz8y3P1B2rr/2EjRnM3/XK6AtpiKqgjzxGjxZweOpUct17/ij4MAnu+dcF4fmHxkXkwfmovvWSsAkLHlDPkGBk2norU8eP3CKgMhBKoQ0yIkODth89DR4Zcu5OwHTNu3/msALr+RguP35ErehkVVRvJMxuLIYJ6etIXrw197xvN/PDW+K6Ir7zn+1ajGVVhVWMPQla81lAUKYV2RAqQikJWGJisM7VnA+N9E/qhFgef5aIvlgM9eraN/A7XCX1o55MN7AAAAAElFTkSuQmCC'
display_name = 'Kemono.Party'
MAX_CORE = 4
def read(self):
self.session = Session()
info = read_info(self.url, self.session, self.cw)
type_ = info['type']
if type_ == 'post':
for img in info['imgs']:
self.urls.append(img.url)
self.title = info['title']
else:
raise NotImplementedError(type_)
def read_info(url, session, cw):
print_ = get_print(cw)
info = {}
if '/post/' in url:
type_ = 'post'
else:
raise NotImplementedError('Not a post')
info['type'] = type_
res = clf2.solve(url, session=session, cw=cw)
soup = Soup(res['html'])
info_ = read_post(url, soup, cw)
info['imgs'] = info_['imgs']
tail = ' (kemono.party_{}_{})'.format(type_, info_['id'])
info['title'] = '{}{}'.format(clean_title(info_['title'], allow_dot=True, n=-len(tail)), tail)
return info
def read_post(url, soup, cw):
print_ = get_print(cw)
info = {}
info['title'] = soup.find('h1').text
info['id'] = soup.find('meta', {'name': 'id'})['content']
imgs = []
# Downloads
for item in soup.findAll('li', class_='post__attachment'):
href = urljoin(url, item.find('a')['href'])
img = Image(href, url, len(imgs))
imgs.append(img)
# Files
files = soup.find('div', class_='post__files')
if files:
for item in files.findChildren(recursive=False):
if 'href' in item.attrs:
a = item
else:
a = item.find('a')
href = urljoin(url, a['href'])
# Imgur
if 'imgur.com/' in href:
print_('Imgur: {}'.format(href))
try:
from extractor import imgur_downloader
for img in imgur_downloader.get_imgs(href):
img = Image(img, href, len(imgs))
imgs.append(img)
except Exception as e:
print_(print_error(e))
continue
img = Image(href, url, len(imgs))
imgs.append(img)
# Content
content = soup.find('div', class_='post__content')
if content:
for img in content.findAll('img'):
src = urljoin(url, img['src'])
img = Image(src, url, len(imgs))
imgs.append(img)
info['imgs'] = imgs
return info
messageBox(u'{}: Kemono.Party'.format(tr_(u'사이트를 추가했습니다')))
20
18 comments
hdd-punkerble
08/08/25 Edited 08/08/25와 감사합니다. 일일이 하나씩 받고있었는데
로리보지
08/08/25 url 형식만 바뀐겨?
Скарби тут
08/09/25 케모노꺼까지 와우
nurisora
08/09/25 호옥쉬 coo로 시작하는 비슷한 사이트도 만들어줄수있어?
글쓴이
08/09/25 그쪽은 개발자 공식 스크립트는 없는거같은데 아래에 누가 올려준 스크립트쓰셈
todndpf2dld
08/10/25 이거 히토미 다운로더 이와라도 다운 가능했었던가?
puccho
08/29/25 ㅇㅇ 근데 쿠기 파일 같은거 수동으로 넣어주고 했었었음
로그인 안하면 제한걸려서 그랬던가
ammm
08/29/25 놓쳤는데 연장가능? ㅠ
글쓴이
08/30/25 위에 소스코드 복사해서
탐색기에서 빈 텍스트 파일 만들고 붙여넣기 한다음 저장
kemono.py 로 이름 바꾸기
veynian2003
09/09/25 복붙하고 py로 하고 적용했는데 invalid오류뜸.... dns우회해도 안되고...머가문제지
글쓴이
09/10/25 방금 다시 테스트해봄 잘됨
플러그인에 다른 기존 스크립트랑 충돌나는건지 확인해보고
스크립트 빼고 몇번 껏다 켯다해보고 다시 추가해보셈
nurisora
09/16/25 원래 한 작가 전체작품도 다운가능하지 않았음? 하나씩은 다운되는데 전체는 invalid 뜨네 오류인가.....?
글쓴이
09/16/25 다운로더 원제작자가 아니라 다른사람꺼 쓰신듯
난 원제작자꺼 살짝 수정한거라 원래 기능엔 변함이없음
nurisora
09/16/25 해결은 못했는데 비슷하게는 했습니당 감사합니다
zhsptlsdlq
09/17/25 어떻게 해결함?
nurisora
09/17/25 Edited 09/17/25https://github.com/KurtBestor/Hitomi-Downloader/issues/5843
여기댓글보고해결했어요
로빈
09/20/25 감사감사 CR 도메인때문에 못하고있었는데 덕분에 해결함
asdawv123
12/05/25 Edited 12/05/25혹시 discord에서 이미지 다운하는 스크립트도 제작 부탁드릴수있을까요
post에서는 정상 작동하는데 discord에서는 안되네요 ㅠㅠ
어떻게 한번 해보려고 이래저래 수정해서 읽기까지는 되는데 결국 이미지 파일 못찾고 끝나네요 ㅠㅠ
공지
AI 이미지 관련 공지 및 관련 규정 수정 공지
1uF
05/02
64347
22
AI 이미지 관련 공지 및 관련 규정 수정 공지
공지
1uF
05/02 64347 22
공지
‼️뉴비 필독 가이드‼️
1uF
05/02
94631
134
‼️뉴비 필독 가이드‼️
공지
1uF
05/02 94631 134
공지
🔔[필독] 채널 규정 & 신문고 (2026 04 05~)
SK
04/05
208010
-25
🔔[필독] 채널 규정 & 신문고 (2026 04 05~)
공지
SK
04/05 208010 -25
공지
🔔[필독] 탭 별 이용 가이드 (20260206~)
Etrick
02/05
256946
-41
🔔[필독] 탭 별 이용 가이드 (20260206~)
공지
Etrick
02/05 256946 -41
공지
[필독] 서브에 자주 올라오는 여러 가지 질문 모음 (20251026~)
SK
05/17/25
1244802
-14
[필독] 서브에 자주 올라오는 여러 가지 질문 모음 (20251026~)
공지
SK
05/17/25 1244802 -14
야짤
ai) ----스압 임신---- 잘익은 마법소녀 19일 큐어 다이아 추가+
Ghost
05/18
6601
28
ai) ----스압 임신---- 잘익은 마법소녀 19일 큐어 다이아 추가+
야짤
Ghost
05/18 6601 28
질문
의술사 질문이요
ogged
05/18
2987
0
의술사 질문이요
질문
ogged
05/18 2987 0
번역
[AI번역] 낯선 소녀들, 저를 지켜주세요!
lavia
05/18
41209
161
[AI번역] 낯선 소녀들, 저를 지켜주세요!
번역
lavia
05/18 41209 161
복구
90일, 유니슨 코드 한패) RJ01407417 ver1.06.zip
ㅇㅇ
05/18
33964
103
90일, 유니슨 코드 한패) RJ01407417 ver1.06.zip
복구
ㅇㅇ
05/18 33964 103
질문
코토네이로같은 게임 더 없나
toto000
05/18
3120
0
코토네이로같은 게임 더 없나
질문
toto000
05/18 3120 0
요청
[복구 요청] 시그리카 Thumbs up 4k
nine4
05/18
4124
0
[복구 요청] 시그리카 Thumbs up 4k
요청
nine4
05/18 4124 0
일반
네토라세 남주에 이입해서 보면 개꼴인데
프로베스트캣
05/18
3189
0
네토라세 남주에 이입해서 보면 개꼴인데
일반
프로베스트캣
05/18 3189 0
일반
한 작가 찾고 있는데 접었나
pqpq9999
05/18
2942
-2
한 작가 찾고 있는데 접었나
일반
pqpq9999
05/18 2942 -2
소리
【NTR 야리서 합숙×스왑】 좋아하는 그녀가선배들에게 범해지는 모습을 보면서 다우너 여자에게 귓가에서 저속하게 부추겨져 사정한 이야기!? 【음어♡ 속삭임♡ 배덕감♡】
키리안
05/18
16370
114
【NTR 야리서 합숙×스왑】 좋아하는 그녀가선배들에게 범해지는 모습을 보면서 다우너 여자에게 귓가에서 저속하게 부추겨져 사정한 이야기!? 【음어♡ 속삭임♡ 배덕감♡】
소리
키리안
05/18 16370 114
동인
(첫 번역, 후타)My Junior Is Forcing Me To Swallow Her Semen
rt1442399
05/18
15885
63
(첫 번역, 후타)My Junior Is Forcing Me To Swallow Her Semen
동인
rt1442399
05/18 15885 63
질문
오우카 2 한패가 안되네요
helejin424
05/18
2060
0
오우카 2 한패가 안되네요
질문
helejin424
05/18 2060 0
질문
ivav2 해변 애널해금법좀....
bragss
05/18
2156
0
ivav2 해변 애널해금법좀....
질문
bragss
05/18 2156 0
일반
의술사 내장뽑기 4중첩으로 죽이는거 실전성있냐
simya1557
05/18
7760
-2
의술사 내장뽑기 4중첩으로 죽이는거 실전성있냐
일반
simya1557
05/18 7760 -2
질문
던브 지하마을 갑옷퀘
stonesteel
05/18
3923
0
던브 지하마을 갑옷퀘
질문
stonesteel
05/18 3923 0
일반
네토라세는 아무래도 더 마이너 취향인가
슬래시
05/18
2876
1
네토라세는 아무래도 더 마이너 취향인가
일반
슬래시
05/18 2876 1
영상
[5/18] 메구밍
브레머튼
05/18
24758
139
[5/18] 메구밍
영상
브레머튼
05/18 24758 139
질문
의술사 히로인들 질문
llll-llll
05/18
5377
0
의술사 히로인들 질문
질문
llll-llll
05/18 5377 0
야짤
AI) 피곤해 보이는 OL의 취미
miso5
05/18
9947
63
AI) 피곤해 보이는 OL의 취미
야짤
miso5
05/18 9947 63
동인
[ai번역][Sekai Saisoku No Panda] 암컷 사정 입문 1~3 <p.165>
mybest
05/18
27484
91
[ai번역][Sekai Saisoku No Panda] 암컷 사정 입문 1~3 <p.165>
동인
mybest
05/18 27484 91
후기 및 공략
창해의 레이디 스파이 후기 (하지마)
unkyung
05/18
7007
7
창해의 레이디 스파이 후기 (하지마)
후기 및 공략
unkyung
05/18 7007 7
소리
[구매보급]민감한 여자친구와 러브러브 에치 ~50회 갈 때까지 박아버리다~
이름뭐하지
05/18
8875
47
[구매보급]민감한 여자친구와 러브러브 에치 ~50회 갈 때까지 박아버리다~
소리
이름뭐하지
05/18 8875 47
요청
[복구요청] 잠입! 의혹의 세뇌 SEX 컬트 종교
kimoring
05/18
4667
3
[복구요청] 잠입! 의혹의 세뇌 SEX 컬트 종교
요청
kimoring
05/18 4667 3
질문
애니메이션을 하나 찾고 싶어요
harangrang
05/18
2246
0
애니메이션을 하나 찾고 싶어요
질문
harangrang
05/18 2246 0
동인
내 엄마이자 내가 좋아하는 사람 칼라미번
무이이야
05/18
9296
6
내 엄마이자 내가 좋아하는 사람 칼라미번
동인
무이이야
05/18 9296 6
질문
비월선행록 난이도 조절 게임중에 못해여?
siri221
05/18
3054
0
비월선행록 난이도 조절 게임중에 못해여?
질문
siri221
05/18 3054 0
영상
[한글자막] 도미나 여왕님과 펨돔 섹스♡
실루엣21
05/18
32280
196
[한글자막] 도미나 여왕님과 펨돔 섹스♡
영상
실루엣21
05/18 32280 196
동인
Meme50 돈 너무 좋아! 1~2
SK
05/18
18447
120
Meme50 돈 너무 좋아! 1~2
동인
SK
05/18 18447 120
질문
게임 번역해서 업로드하는 사람들 검수 어디까지함??
솔라셀
05/18
3278
2
게임 번역해서 업로드하는 사람들 검수 어디까지함??
질문
솔라셀
05/18 3278 2
영상
온천에서 그레이스 겨드랑이에 꼬추 비비는 영상 (ZZZ)
브레머튼
05/18
17530
92
온천에서 그레이스 겨드랑이에 꼬추 비비는 영상 (ZZZ)
영상
브레머튼
05/18 17530 92
요청
히로인즈 코드 복구 요청합니다 ㅠ
combex
05/18
2415
-1
히로인즈 코드 복구 요청합니다 ㅠ
요청
combex
05/18 2415 -1
s/somisoft
• 143,985 subscribers여러가지 다루는 서브
Created 05/17/2025, 14:58:43