U
    h                     @   s@   d dl Z d dlmZ e jd d dlmZ G dd deZdS )    N)PyQueryz..)Spiderc                   @   s   e Zd Zd+ddZdd Zdd Zdd	 Zd
d ZdddddddZdZ	dd Z
dd Zdd Zdd Zd,ddZdd  Zd!d" Zd#d$ Zd-d&d'Zd.d(d)Zd*S )/r    c                 C   s   d S N )selfextendr   r   (   /storage/emulated/0/lz/py/sy/4K影视.pyinit   s    zSpider.initc                 C   s   d S r   r   r   r   r   r	   getName   s    zSpider.getNamec                 C   s   d S r   r   r   urlr   r   r	   isVideoFormat   s    zSpider.isVideoFormatc                 C   s   d S r   r   r   r   r   r	   manualVideoCheck   s    zSpider.manualVideoCheckc                 C   s   d S r   r   r   r   r   r	   destroy   s    zSpider.destroyztext/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7zzh-CN,zh;q=0.9,en;q=0.8z@"Not/A)Brand";v="8", "Chromium";v="134", "Google Chrome";v="134""macOS"ZdocumentuMozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36)acceptzaccept-languagez	sec-ch-uasec-ch-ua-platformzsec-fetch-dest
user-agentzhttps://4k-av.comc                 C   sl   |   }i }g }t|d d d D ]"}|| |ddd q(||d< | |dd|d	< |S )
Nz#category ul liahref)	type_nameZtype_idclassz#MainContent_scrollul ul liz.poster spanlist)getpqr   itemsappendtextattrgetlist)r   filterdataresultclasseskr   r   r	   homeContent%   s    
zSpider.homeContentc                 C   s   d S r   r   r   r   r   r	   homeVideoContent2   s    zSpider.homeVideoContentc                 C   sP   |  | d| d}i }| |d|d< ||d< d|d< d|d	< d
|d< |S )Nzpage-z.htmlz'#MainContent_newestlist .virow .NTMitemr   Zpagei'  Z	pagecountZ   limiti?B totalr   r"   )r   tidpgr#   r   r$   r%   r   r   r	   categoryContent5   s    zSpider.categoryContentc                 C   s   |  |d }|d}|d |d |d |d ddd	}|d
}|rdd t| dd  D }|d|dd  d|d   d||d< n|d  d|d  |d< d|giS )Nr   z
#videoinfoz#MainContent_tags.tags az&#MainContent_videodetail.videodetail az#MainContent_titleh12 h2zp.cnlineZ4KAVr   )r   vod_yearvod_remarksZvod_contentZvod_play_fromvod_play_urlz
#rtlist lic                 S   s,   g | ]$}|d    d|dd qS )span$r   r   )r    r!   ).0ir   r   r	   
<listcomp>L   s     z(Spider.detailContent.<locals>.<listcomp>   r4   r5   #r3   z#tophead h1r   )r   r    r   r   inserteqjoin)r   Zidsr$   vZvodZvlistcr   r   r	   detailContent?   s     



(zSpider.detailContent1c                 C   s"   |  d| }d| |diS )Nz/s?k=r   z3#MainContent_newestlist .virow.search .NTMitem.Mainr-   )r   keyquickr/   r$   r   r   r	   searchContentS   s    zSpider.searchContentc           	   
   C   s   z.|  |}d|dd }}|s,tdW n6 tk
rd } zd| j |  }}W 5 d }~X Y nX | j| j dddd	}|||d
S )Nr   z#MainContent_videowindow sourcesrcu   未找到播放地址r9   /r   r   )originZrefererr   r   )parser   header)r   r!   	Exceptionhost)	r   flagidvipFlagsr$   pr   eheadersr   r   r	   playerContentW   s    
 &
zSpider.playerContentc                 C   s   d S r   r   )r   paramr   r   r	   
localProxyf   s    zSpider.localProxyc                 C   s   d S r   r   r   r   r   r	   liveContenti   s    zSpider.liveContent!   .resyear label[title="分辨率"]c              	   C   sr   g }|  D ]`}|d d}||dd|d |ddt|dkrX|d	 nd
|| d q|S )Nz	.title h2 z.title ar   r   z.poster imgrE   r9   r   r   )Zvod_idZvod_nameZvod_picr2   r1   )r   r    splitr   r!   len)r   r$   yZvideosr7   nsr   r   r	   r"   l   s    

zSpider.getlistc              
   C   sr   | j  | }| j|| jdj}z
t|W S  tk
rl } z$tt|  t|d W Y S d }~X Y nX d S )N)rQ   zutf-8)	rK   ZfetchrQ   r    pqrJ   printstrencode)r   pathr   r$   rP   r   r   r	   r   y   s    
zSpider.getpqN)r   )rA   )rV   )r   )__name__
__module____qualname__r
   r   r   r   r   rQ   rK   r(   r)   r0   r@   rD   rR   rT   rU   r"   r   r   r   r   r	   r   	   s.   
	


r   )sysZpyqueryr   r\   r`   r   Zbase.spiderr   r   r   r   r	   <module>   s   