From 4068664a8515012411eaa5c522745b24aa4cb124 Mon Sep 17 00:00:00 2001 From: hjdhnx Date: Tue, 11 Oct 2022 15:39:59 +0800 Subject: [PATCH] md --- txt/py/py_yunso.py | 80 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 txt/py/py_yunso.py diff --git a/txt/py/py_yunso.py b/txt/py/py_yunso.py new file mode 100644 index 0000000..8571cb9 --- /dev/null +++ b/txt/py/py_yunso.py @@ -0,0 +1,80 @@ +#coding=utf-8 +#!/usr/bin/python +import sys +sys.path.append('..') +from base.spider import Spider +import requests +import json +import base64 + +class Spider(Spider): + def getDependence(self): + return ['py_ali'] + def getName(self): + return "py_yunso" + def init(self,extend): + self.ali = extend[0] + print("============py_yunso============") + pass + def isVideoFormat(self,url): + pass + def manualVideoCheck(self): + pass + def homeContent(self,filter): + result = {} + return result + def homeVideoContent(self): + result = {} + return result + def categoryContent(self,tid,pg,filter,extend): + result = {} + return result + header = { + "User-Agent": "Mozilla/5.0 (Linux; Android 12; V2049A Build/SP1A.210812.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/103.0.5060.129 Mobile Safari/537.36", + "origin": "https://www.upyunso.com/" + } + def detailContent(self,array): + id = array[0] + ysurl = 'https://api.upyunso.com/{0}'.format(id.replace('.html', '')) + header = { + "User-Agent": "Mozilla/5.0 (Linux; Android 12; V2049A Build/SP1A.210812.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/103.0.5060.129 Mobile Safari/537.36", + "referer": "https://www.upyunso.com/{0}".format(id), + "origin": "https://www.upyunso.com/" + } + urlrsp = requests.get(url=ysurl, headers=header).text.encode('ISO-8859-1').decode('UTF-8') + url = ["{0}".format(json.loads(base64.b64decode(urlrsp))['result']['res_url'])] + print(url) + return self.ali.detailContent(url) + + def searchContent(self,key,quick): + url = "https://api.upyunso.com/search?keyword={0}&page=1&s_type=2".format(key) + rsp = requests.get(url=url, headers=self.header) + vodList = json.loads(base64.b64decode(rsp.text))['result']['items'] + videos = [] + for vod in vodList: + conList = vod['content'] + for con in conList: + if 'download.html?url' in con['size']: + vid = con['size'] + videos.append({ + "vod_id": vid, + "vod_name": con['title'], + "vod_pic": "https://inews.gtimg.com/newsapp_bt/0/13263837859/1000", + "vod_remarks": vod['insert_time'] + }) + result = { + 'list':videos + } + return result + + def playerContent(self,flag,id,vipFlags): + return self.ali.playerContent(flag,id,vipFlags) + + config = { + "player": {}, + "filter": {} + } + header = {} + + def localProxy(self,param): + return [200, "video/MP2T", action, ""] \ No newline at end of file -- GitLab