PyComicPackRouMan/domain/RouMan.py
2023-04-04 06:29:49 +08:00

47 lines
2.8 KiB
Python

from common.Constant import pathStr
from common.Comic import ListComic
from common.Comic import Comic
from common.BaseComicEntity import baseComic
from utils.NetUtils import htmlUtils
class comicEntity:
@classmethod
def downladsComcis(cls,url):
str_xpath='//script[@id="__NEXT_DATA__"]/text()'
str_exec="props.pageProps.books"
books = htmlUtils.setXpathData(url,xpath=str_xpath,num=0,exec=str_exec)
#comic_names = htmlUtils.setXpathData(url,xpath=str_xpath,num=0,exec=str_exec,result_type="list",type="name")
#chapter_links = htmlUtils.setXpathData(url,xpath=str_xpath,num=0,exec=str_exec,result_type="list",type="id"
# ,start_add=pathStr.getBaseUrl(url)+"/books/")
#update_at= htmlUtils.setXpathData(url,xpath=str_xpath,num=0,exec=str_exec,result_type="list",type="updateAt")
#ciUtils.setListComicsLinksUpdateAt(comic_names,chapter_links,update_at)
ListComic.setListComicName(books,"name")
ListComic.setListComicChapterLink(books,"id",start_add=pathStr.getBaseUrl(url)+"/books/")
ListComic.setListComicUpdateAt(books,"updateAt")
return baseComic.updateComics(chapters_xpath='//div[contains(@class,"bookid_chapterBox")]//div[contains(@class,"bookid_chapter")]/a/text()')
@classmethod
def oneComic(cls,sleep=None):
c_url = Comic.getCurrentDownLink()
if c_url == None: return None
title = htmlUtils.getXpathData('//div[@class="col"]/h5/text()',url=c_url,num=0,update=True)
#别名
#alias = htmlUtils.xpathData('//span[contains(@class,"bookid_alias")]/text()',num=1)
icon = htmlUtils.getXpathData('//img[@class="img-thumbnail"]/@src',num=0)
author = htmlUtils.getXpathData('//div[contains(@class,"bookid_bookInfo")]/p[1]/text()',num=1)
tags = htmlUtils.getXpathData('//div[contains(@class,"bookid_bookInfo")]/p[3]/b/text()',num=0)
action = htmlUtils.getXpathData('//div[contains(@class,"bookid_bookInfo")]/p[2]/text()',num=1)
dep = htmlUtils.getXpathData('//div[contains(@class,"bookid_bookInfo")]/p[4]/text()',num=1)
update_date = htmlUtils.getXpathData('//div[contains(@class,"bookid_bookInfo")]/p[5]/small/text()',num=1)
chapters = htmlUtils.getXpathData('//div[contains(@class,"bookid_chapterBox")]//div[contains(@class,"bookid_chapter")]/a/text()')
chapter_href = htmlUtils.getXpathData('//div[contains(@class,"bookid_chapterBox")]//div[contains(@class,"bookid_chapter")]/a/@href')
baseComic.oneComic(url=c_url,title=title,author=author,
icon=icon,tags=tags,dep=dep,chapters=chapters,chapter_href=chapter_href,
genre="韩漫",age_rating="R18+")
@classmethod
def start(cls,url):
pathStr.setComicMainAndPath(pathStr.comic_rm)
cls.downladsComcis(url)
cls.oneComic()