
    >Ai                          d dl Z d dlmZ d dlZd dlmZ d dlZd dlZd dlZd dl	Z
ej                            d           dZddda e j        ed	
          Zej        at$          dz   ZdZ G d de          ZdS )    N)BeautifulSoup)Spiderz..z$https://3642.7rnr.com/web/index.htmlzMozilla/5.0 (Linux; Android 13; M2102J2SC Build/TKQ1.221114.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/143.0.7499.3 Mobile Safari/537.36zgzip, deflate, br, zstd)z
User-AgentzAccept-EncodingT)allow_redirectsz/web/abcdefg.ashx c                   V    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd ZdS )r   c                     dS )Nu   首页 selfs    +   /storage/emulated/0/纯福利/PY1/瑟瑟.pygetNamezSpider.getName   s    x    c                     d S Nr	   )r   extends     r   initzSpider.init       r   c                     d S r   r	   )r   urls     r   isVideoFormatzSpider.isVideoFormat    r   r   c                     d S r   r	   r
   s    r   manualVideoCheckzSpider.manualVideoCheck#   r   r   c                     i }ddddddddddd	d
ddddddddddddddddddddddddddddddddd dd!d"dgi}|S )#Nclass1003u   亚洲无码)type_id	type_name3022u   欧美无码3026u   中文字幕3025u   经典三级5u   国产主播134u   韩国主播3137u   ＡＳＭＲ3138u   恐怖色情131u   网红视频132u   国产视频3023u   人妖伪娘130u   动漫卡通3088u   华人原创3135u   ＪＶＩＤ3136u   ＳＷＡＧ3134u   明星换脸r	   )r   filterresults      r   homeContentzSpider.homeContent&   s    ^LL(.^LL(.^LL(.^LL(+.II(-NKK(.^LL(.^LL(-NKK(-NKK(.^LL(-NKK(.^LL(.^LL(.^LL(.^LLN O  r   c                    g }	 dddd}t          j        t          |t                    }d|_        |                                }|                    dg           }|D ]v}|                    dd	          }|                    d
d	          }|                    dd	          }	|                    dd	          }
|||	|
d}|                    |           wd|i}|S #  Y d S xY w)Ngetindexdata1762753963537691 5ad87a586f5aae9c2ca4f913d45f8958)actiontsr   dataheadersutf-8videostitler   idcoverimg
updatedatevod_idvod_namevod_picvod_remarkslist)requestspostnurlheaderxencodingjsongetappend)r   r;   payloaddetailres
video_listvideonamer=   picremarksr.   s               r   homeVideoContentzSpider.homeVideoContent:   s	   	('79 9G ]t'7KKKF%FO++--C2..J# % %yy"--YYtR((ii
B//))L"55  $"#*	  e$$$$f%FM	DDs   CC C c           	      h   i }g }|rt          |          }nd}|dk    rd|hddddddd}nd|ht          |          hdddddd}	 t          j        t          |t
          	          }	d
|	_        |	                                }
|
                    dg           }|D ]v}|                    dd          }|                    dd          }|                    dd          }|                    dd          }||||d}|	                    |           wn#  Y nxY wd|i}||d<   d|d<   d|d<   d|d<   |S )N   1	getvideos12u   全部176275570014518 ff4218e4cafd552c4d0c93eb935c14f1)r4   vtype	pageindexpagesizetags	sortindexr5   r6   r7   r:   r;   r<   r   r=   r>   r?   r@   rE   pagec   	pagecountZ   limittotal)
intstrrF   rG   rH   rI   rJ   rK   rL   rM   )r   cidpgr-   extr.   r;   rc   payload1rO   rP   rQ   rR   rS   r=   rT   rU   s                    r   categoryContentzSpider.categoryContentX   s    	r77DDD3;;%    &79 9HH &!$ii[   &79 9H	]t(GLLLF%FO++--C2..J# % %yy"--YYtR((ii
B//))L"55  $"#*	  e$$$$%	D&!v {wws   CD Dc                 d   |d         }i }g }d}d|ddd}t          j        t          |t                    }d|_        |                                }|                    d	i                               d
i g          d         }	|	                    dd          }
|	                    dd          }|	                    dd          }|	                    dd          }|	                    dd          }g }g }|	                    d          r|                    di                               dd          }|                    di                               dd          }|rC||	                    dd          z   }|                    d           |                    |           |rC||	                    dd          z   }|                    d           |                    |           |                    |
||||d                    |          d                    |          d           ||d<   |S )Nr   r   getvideo1762756475175265 656d5b40c2122f86bc35895dc58fd113)r4   vidr5   r6   r7   r:   r8   Tabler=   r<   r>   r?   vurlxldatavaluevalue1u
   播放源1u
   播放源2z$$$)rA   rB   rC   rD   vod_contentvod_play_fromvod_play_urlrE   )	rF   rG   rH   rI   rJ   rK   rL   rM   join)r   idsdidr.   r;   playurlpayload2res1rP   noderA   rB   rC   rD   rz   playFromplayList	base_url1	base_url2
full_vurl1
full_vurl2s                        r   detailContentzSpider.detailContent   s0   !f #3	5 5
 }HgFFFiikkwwvr""&&w55a8$##88GR((((:r**hh|R00hhw++88F 
	,"--11'2>>I"--11(B??I ,&&")=)==
---
+++ ,&&")=)==
---
+++ &&"ZZ11!JJx00  	 	 	  vr   c                     |                     d          }d}|dk    rCt          |          dk    r|d         d|d         z   }}i }||d<   d|d<   ||d<   t          |d<   |S d S )	NhttprX   r   parser   playUrlr   header)splitlenrI   )	r   flagr=   vipFlagspartsxiutanbefore_httpsafter_httpsr.   s	            r   playerContentzSpider.playerContent   s}      Q;;5zzA~~,1!HfuQx6GkF$F7O "F9'F5M&F8M ;r   c                    i }g }d|ht          |          hddddd}t          j        t          |t                    }d|_        |                                }|                    d	g           }	|	D ]v}
|
                    d
d          }|
                    dd          }|
                    dd          }|
                    dd          }||||d}
|                    |
           w||d<   ||d<   d|d<   d|d<   d|d<   |S )Nsearchr[   01762756927087982 2392bd117b4e6e35b5ec1fa9bc380b6f)r4   pr_   r`   	channelidr5   r6   r7   r:   r8   r<   r   r=   imgurlr?   r@   rE   rc   <   re      rg   i?B rh   )	rj   rF   rG   rH   rI   rJ   rK   rL   rM   )r   keyquickrc   r.   r;   payload3rO   rP   rQ   rR   rS   r=   rT   rU   s                  r   searchContentPagezSpider.searchContentPage   s3   d))#35 5 4hHHH!kkmmWWVR((
 	! 	!E99Wb))D4$$B))Hb))Ciib11G &	 E MM%    vv {w wr   c                 0    |                      ||d          S )NrY   )r   )r   r   r   s      r   searchContentzSpider.searchContent   s    %%c5#666r   c                     |d         dk    r|                      |          S |d         dk    r|                     |          S |d         dk    r|                     |          S d S )Ntypem3u8mediats)	proxyM3u8
proxyMediaproxyTs)r   paramss     r   
localProxyzSpider.localProxy   sj    &>V##>>&)))F^w&&??6***F^t##<<'''tr   N)__name__
__module____qualname__r   r   r   r   r/   rV   ro   r   r   r   r   r   r	   r   r   r   r      s                  (  <6 6 6p. . .`  ! ! !F7 7 7    r   r   )rF   bs4r   rebase.spiderr   sysrK   base64urllib.parseurllibpathrM   murlrI   rL   responser   xurlrH   pmr	   r   r   <module>r      s           				       



          - s.  8<d333|!!d d d d dV d d d d dr   