
    hg
                     F    d dl Z d dlZd dlZd dlmZ  G d de          ZdS )    N)Spiderc                   H    e Zd Zd ZddZd Zd Zd Zd Zdd	Z	d
 Z
d ZdS )r   c                     dS )Nu   Chaturbate 直播 selfs    /   /storage/emulated/0/纯福利/PY1/Chaturbate.pygetNamezSpider.getName   s    11     c                 (    dddic| _         | _        | S )Nzhttps://chaturbate.comz
User-Agentz)Mozilla/5.0 (Windows NT 10.0; Win64; x64))baseheaders)r   extends     r	   initzSpider.init   s    ":\Kv<w	4<r   c                 "    ddddddddddgiS )	Nclassfu   女性)type_id	type_namemu   男性cu   情侣r   )r   filters     r	   homeContentzSpider.homeContent	   sD    cAAsaiCjCjx{  KS  mT  mT  U  V  	Vr   c                 j   |rt          |          nd}dddd                    |d          }| j         d| d|d	z   }|                     || j        
                                          }|                    dd          }d |                    dg           D             }	|	|dz   |dz   d	z  d	|dS )Nr   r   r   r   )r   r   r   r   zA/api/ts/roomlist/room-list/?enable_recommendations=false&genders=z&limit=90&offset=Z   r   total_countc                     g | ]]}|d          |                     dd          d|d           |                     d          rdt          |d                   z   dz   nd d^S usernameimgr   display_agez ())vod_idvod_picvod_remarksvod_namegetstr.0rs     r	   
<listcomp>z*Spider.categoryContent.<locals>.<listcomp>        
 
 
  }ub1A1ARTjMoQRQVQVWdQeQe+m4#a6F2G2G+G#+M+Mkmooq q
 
 
r   rooms   Y   )listpage	pagecountlimittotal)intr*   r   fetchr   json)
r   tidpgr   r   genderurldatar8   videoss
             r	   categoryContentzSpider.categoryContent   s    !SWWW3//33C<<}}]c}}vxy{v{}}zz#t|z4499;;**
 
 XXgr**
 
 

 QebjR=OZ\glmmmr   c                 4    |d         }d|d| ddd| dgiS )Nr   r4   zChaturbate - r   
Chaturbateu
   直播源$)r%   r(   r&   vod_play_fromvod_play_urlr   )r   ids	room_slugs      r	   detailContentzSpider.detailContent   sJ    F	I;V9;V;Vce!-?WI?W?WY Y Z [ 	[r   c                     dd|iddi}}}	 t          j        |||                                                              d|          }n## t           j        t          j        f$ r |}Y nw xY wdd||d	S )
Nz-https://chaturbate.com/get_edge_hls_url_ajax/rH   zX-Requested-WithXMLHttpRequest)r@   r   r?   r   r   )parseplayUrlr?   header)requestspostr;   r*   RequestExceptionJSONDecodeError)r   flagidvipFlagsr?   r@   r   play_urls           r	   playerContentzSpider.playerContent   s    L{\^N_bt  wG  bH7T	}StWEEEJJLLPPQVXZ[[HH)4+?@ 	 	 	HHH	r(gNNNs   =A
 
A*)A*0c                     |rt          |          nd}| j         d|dz   d| }|                     || j                                                  }d |                    dg           D             }d|iS )	Nr   zI/api/ts/roomlist/room-list/?enable_recommendations=false&limit=90&offset=r   z&query=r   c                     g | ]]}|d          |                     dd          d|d           |                     d          rdt          |d                   z   dz   nd d^S r    r)   r,   s     r	   r/   z(Spider.searchContent.<locals>.<listcomp>'   r0   r   r1   r4   )r9   r   r:   r   r;   r*   )r   keyquickr=   url_apir@   rA   s          r	   searchContentzSpider.searchContent#   s    !SWWWY||iklnin||wz||zz'4<z88==??
 
 XXgr**
 
 

 r   c                 
    d|v S )Nz.m3u8r   )r   r?   s     r	   isVideoFormatzSpider.isVideoFormat.   s    C"7r   c                     dS )NTr   r   s    r	   manualVideoCheckzSpider.manualVideoCheck/   s    ttr   N)r   )rX   )__name__
__module____qualname__r
   r   r   rB   rI   rW   r^   r`   rb   r   r   r	   r   r      s        111   V V Vn n n[ [ [O O O	  	  	  	  877+++++r   r   )rer;   rO   base.spiderr   r   r   r	   <module>rh      so                     +, +, +, +, +,V +, +, +, +, +,r   