Open sungwooz opened 1 year ago
이것을 테스트하다: aio_booktoki_v3.hds
이것을 테스트하다: aio_booktoki_v3.hds
안녕하세요
지난번 북토끼 소설들을 하나로 합치게 하고, 구분지어지는 작업을 만들어 주셔서 잘 사용하고 있었는데, 최근 사이트가 업데이트(아마도 뭔가 소소한)를 하면서 받아지지 않고 있습니다.
스크립 수정 또는 해결방안? 부탁드립니다~~~
북토끼 URL : https://booktoki294.com/novel/8453259 (완결 소설 링크로 바로 연결해봤습니다)
덕분에 잘 사용하고 있습니다.
특히 북토끼를 잘 이용하고 있습니다.
다만, 게시글들을 받은 후 하나로 합치는 작업 예를 들어 type * > 합친글.txt 등으로 작업할떄, 각 회를 구분 지을 수 없게 붙여 나오는 경우가 많아, 나름 개노가다로 띄어주고 있는데,
각 글 하단 또는 상단에 특수 문자열 (예를 들면 [엔터][엔터]====================================[엔터][엔터] )을 넣을 수 있게 할 수 있을까요?
제가 사용하는 북토끼 스크립트는 아래와 같습니다...
class Image(object): def init(self, src, name): ext = ".{}".format(src.split(".")[-1]) if ext.lower()[1:] not in ["jpg", "jpeg", "bmp", "png", "gif", "webm", "webp"]: ext = ".jpg" self.filename = f"{name}{ext}" self.url = LazyUrl(src, lambda _: src, self)
@Downloader.register class Downloader_Booktoki(Downloader): type = "booktoki" URLS = [r"regex:booktoki[0-9]*.com"] MAX_CORE = 4 icon = "https://booktoki292.com/img/book/favicon-32x32.png"
def get_soup(url): html = clf2.solve(url)["html"] return Soup(html)
def get_pages_list(soup): pages_list = [] listbody = soup.find("ul", class="list-body") list_items = list_body.findall("li", class="list-item") for list_item in list_items: page = list_item.find("a")["href"] pages_list.append(page) pages_list.reverse() return pages_list
def get_infolist(soup): """ -> [ title, [ platform, tags, artist ], summary ] """ infobox = soup.find("div", class="col-sm-8") contents = infobox.findall("div", class="view-content") details = contents[1].get_text().split("\xa0") for n, detail in enumerate(details): details[n] = detail.strip() return [contents[0].get_text().strip(), details, contents[2].get_text().strip()]
def get_content(soup): novel = soup.find("div", {"id": "novel_content"}) ps = novel.find_all("p") if len(novel.find_all("p")) != 0: text = "" for n, p in enumerate(ps): if p.get_text() != "": text += p.get_text() else: text += "\n" text += "\n" else: text = novel.get_text() return text
def get_title(soup): return get_info_list(soup)[0]
def get_artist(soup): return get_info_list(soup)[1][2]
def get_pagetitle(soup): full = soup.find("div", class="toon-title") span = full.find("span").get_text() title = full.get_text().replace(span, "").strip() return clean_title(title)
log(f"Site Added: Booktoki")