├── .github └── workflows │ ├── autoCheck.yaml │ └── release.yaml ├── .gitignore ├── .vscode └── launch.json ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── assets └── image.png ├── build.py ├── jiguang.json ├── js ├── 4kysxz.js ├── aiyingshi.js ├── alipansou.js ├── aliyunpanshare.js ├── asianx.js ├── audiomack.js ├── base_spider.js ├── bilibili.js ├── bookan.js ├── bqg_open.js ├── changzhang.js ├── ciliduo.js ├── cilixiong.js ├── cntv.js ├── copymanga.js ├── dj0898_book_open.js ├── doll.js ├── douban.js ├── dubo.js ├── dygangs.js ├── dyttbt.js ├── feifan.js ├── feifan18.js ├── freeok.js ├── gitcafe.js ├── haiwaikan.js ├── hanxiucao.js ├── haoxi.js ├── hscangku.js ├── huya.js ├── ikanbot.js ├── jable.js ├── jiafeimao.js ├── jianpian.js ├── jiujiuliu.js ├── kankan70.js ├── kuaikan.js ├── liangzi.js ├── liangzi18.js ├── liujiushu.js ├── lovemovie.js ├── lovemovie18.js ├── mhdq.js ├── mp4movie.js ├── mxanime.js ├── nangua.js ├── newvision.js ├── nivod.js ├── nivod_18.js ├── pan_search.js ├── pipixia.js ├── push_agent.js ├── sehuatang.js ├── sp360.js ├── spider.js ├── star.js ├── testSpider.js ├── tiantian.js ├── ttkan.js ├── vodSpider.js ├── weixine.js ├── wogg.js ├── xb6v.js ├── xgcartoon.js └── yiqikan.js ├── json ├── CatOpen.json └── TVBox.json ├── lib ├── TextDecoder.js ├── TextEncoder.js ├── ali.js ├── ali_api.js ├── ali_object.js ├── big5.js ├── bilibili_ASS_Danmaku_Downloader.js ├── book.js ├── cat.js ├── cloud.js ├── danmuSpider.js ├── encoding-indexes.js ├── encodings.js ├── euc-jp.js ├── euc-kr.js ├── ffm3u8_open.js ├── gb18030.js ├── gbk_us.js ├── hls.js ├── iso-2022-jp.js ├── log.js ├── misc.js ├── nivid_object.js ├── pipiXiaObject.js ├── quark.js ├── quark_api.js ├── quark_object.js ├── shift-jis.js ├── similarity.js ├── single-byte.js ├── table.js ├── tencentDanmu.js ├── text_decoder_index.js ├── text_decoder_indexes.js ├── text_decoder_utils.js ├── utf16.js ├── utf8.js ├── utils.js ├── vod.js └── x-user-defined.js ├── nodejs ├── .eslintrc.cjs ├── .gitignore ├── .prettierrc.json ├── babel.config.cjs ├── esbuild-config.js ├── esbuild.js ├── nodemon.json ├── package-lock.json ├── package.json ├── readme.md ├── rollup-config.js ├── rollup.js └── src │ ├── dev.js │ ├── index.config.txt │ ├── index.js │ ├── router.txt │ ├── spider │ ├── pan │ │ └── alist.js │ ├── spider.js │ ├── testSpider.js │ ├── tmpSpider.txt │ └── video │ │ └── push.js │ └── util │ ├── global.js │ ├── log.js │ └── misc.js ├── package-lock.json ├── package.json ├── releases └── 日志上传服务V1.0.1 │ └── Windows │ └── LogServer.exe ├── requirements.txt ├── resources ├── ali.jpg ├── alipay.jpg ├── cili.jpg ├── dygang.jpg ├── dytt.jpg ├── error.png ├── liangzi.jpg ├── push.jpg └── wechat.jpg ├── test.js ├── test.json └── wrapper └── index.js /.github/workflows/autoCheck.yaml: -------------------------------------------------------------------------------- 1 | 2 | name: AutoCheck 3 | on: 4 | schedule: 5 | - cron: 0 16 * * * # 分钟(0) 小时(0) 日(*) 月(*) 星期几(*) 6 | workflow_dispatch: 7 | 8 | jobs: 9 | build: 10 | name: TVSpider 11 | runs-on: ubuntu-latest 12 | strategy: 13 | fail-fast: false 14 | matrix: 15 | os: [ "ubuntu-latest" ] 16 | steps: 17 | - name: Clone TVSpider Repository 18 | uses: actions/checkout@v3 19 | with: 20 | repository: jadehh/AutoCheckin 21 | 22 | - name: Setup Python 23 | uses: actions/setup-python@v3 24 | with: 25 | python-version: '3.10' 26 | - name: Upgrade Pip 27 | run: | 28 | python -m pip install --upgrade pip 29 | - name: Install requirements 30 | run: | 31 | pip install -r ./requirements.txt 32 | - name: Auto Check 33 | run: | 34 | python ./main.py --aliToken "${{ secrets.ALI_TOKEN }}" --quarkCookie "${{ secrets.QUARK_COOKIE}}" --telChatId "${{ secrets.TEL_CHATID}}" --telToken "${{ secrets.TEL_TOKEN}}" 35 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | local 2 | node_modules 3 | .idea 4 | log 5 | local 6 | open_config.json 7 | test.py 8 | tv_config.json 9 | nodejs/dist 10 | nodejs/node_modules 11 | nodejs/src 12 | releases/日志上传服务V1.0.1/Windows/ 13 | 18_open_config.json 14 | 18_tv_config.json 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | // 使用 IntelliSense 了解相关属性。 3 | // 悬停以查看现有属性的描述。 4 | // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 5 | "version": "0.2.0", 6 | "configurations": [ 7 | 8 | { 9 | "name": "Python: 当前文件", 10 | "type": "python", 11 | "request": "launch", 12 | "program": "${file}", 13 | "console": "integratedTerminal", 14 | "justMyCode": true 15 | } 16 | ] 17 | } -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | ### 更新日志 2 | 3 | ### V1.0.7.0 - 2024-04-23 4 | * 新增69书吧源 5 | ---- 6 | 7 | 8 |
9 | 10 | ### V1.0.6.9 - 2024-04-16 11 | * 修复bilibili登录失败,仍然显示历史记录的bug 12 | ---- 13 | 14 | ### V1.0.6.8 - 2024-04-16 15 | * 解决豆瓣搜索问题,并支持翻页 16 | ---- 17 | 18 | 19 | ### V1.0.6.7 - 2024-04-15 20 | * 支持哔哩哔哩搜索翻页 #45 21 | ---- 22 | 23 | ### V1.0.6.6 - 2024-04-15 24 | * 支持南瓜影视搜索翻页 #46 25 | * 优化南瓜搜索部分图片加载不出来的bug 26 | * 新增格式化url的方法 27 | ---- 28 | 29 | ### V1.0.6.5 - 2024-04-15 30 | * 新增天天影视源 31 | ---- 32 | 33 | ### V1.0.6.4 - 2024-04-14 34 | * 修复SP360弹幕加载 35 | * 修复bilibili在TV无法播放的问题,并删除相关和DASH播放的视频链接 36 | ---- 37 | 38 | ### V1.0.6.3 - 2024-04-14 39 | * 修复360无法播放的bug,使用sniff解析URL 40 | ---- 41 | 42 | ### V1.0.6.2 - 2024-04-14 43 | * 修复含羞草类别问题 44 | ---- 45 | 46 | 47 | ### V1.0.6.1 - 2024-04-13 48 | * 新增含羞草源 49 | * 支持搜索页面的翻页 50 | ---- 51 | 52 | ### V1.0.6.0 - 2024-04-13 53 | * 新增磁力熊源 54 | ---- 55 | 56 | ### V1.0.5.9 - 2024-04-13 57 | * 支持Log日志上传 58 | ---- 59 | 60 | ### V1.0.5.8 - 2024-04-02 61 | * 修复玩偶姐姐和jable源 62 | ---- 63 | 64 | ### V1.0.5.7 - 2024-04-02 65 | * 完成哔哩哔哩爬虫,优化播放列表格式 66 | ---- 67 | 68 | ### V1.0.5.6 - 2024-04-02 69 | * 新增哔哩哔哩源 70 | * 支持哔哩哔哩登录,Cookie传入 71 | ---- 72 | 73 | 74 | ### V1.0.5.5 - 2024-04-02 75 | * 解决玩偶哥哥无法登录阿里的bug 76 | ---- 77 | 78 | 79 | ### V1.0.5.4 - 2024-04-02 80 | * 修复阿里盘无法加载的bug 81 | ---- 82 | 83 | ### V1.0.5.3 - 2024-04-02 84 | * 修复爱看机器人部分详情无法打开的bug 85 | ---- 86 | 87 | 88 | ### V1.0.5.2 - 2024-04-02 89 | * 修改海外看名称 90 | ---- 91 | 92 | ### V1.0.5.1 - 2024-04-02 93 | * 新增海外看 94 | * 解决采集网站搜索图片加载不出来的bug 95 | * 去除log日志输出 96 | ---- 97 | 98 | 99 | ### V1.0.5.0 - 2024-04-01 100 | * 解决动漫加载不出来的bug 101 | ---- 102 | 103 | 104 | ### V1.0.4.9 - 2024-04-01 105 | * 合并MX动漫分支到主分支中 106 | ---- 107 | 108 | ### V1.0.4.8 - 2024-04-01 109 | * 添加sniff方法 110 | ---- 111 | 112 | ### V1.0.4.7 - 2024-04-01 113 | * 新增MX动漫源 114 | ---- 115 | 116 | ### V1.0.4.6 - 2024-04-01 117 | * 优化nodejs Spider 118 | * 解决拷贝漫画 119 | ---- 120 | 121 | ### V1.0.4.5 - 2024-03-29 122 | * 解决笔趣阁历史记录无法加载的bug 123 | ---- 124 | 125 | ### V1.0.4.4 - 2024-03-29 126 | * 修复笔趣阁 127 | ---- 128 | 129 | ### V1.0.4.3 - 2024-03-29 130 | * 取消日志输出解决IOS上的问题 131 | ---- 132 | 133 | ### V1.0.4.2 - 2024-03-29 134 | * 支持小说和音乐代码转nodejs 135 | * 支持push操作 136 | ---- 137 | 138 | ### V1.0.4.1 - 2024-03-29 139 | * 解决图书和音乐加载失败的bug 140 | ---- 141 | 142 | ### V1.0.4.0 - 2024-03-27 143 | * 去除已失效链接 144 | ---- 145 | 146 | ### V1.0.3.9 - 2024-03-27 147 | * 解决电影港首页无法加载图片的bug 148 | * 去除已失效链接 149 | ---- 150 | 151 | ### V1.0.3.8 - 2024-03-27 152 | * 切换到主分支,其他分支都是用来发布 153 | ---- 154 | 155 | 156 | ### V1.0.3.7 - 2024-03-27 157 | * 解决豆瓣类别无法加载的bug 158 | * 解决豆瓣无法加载第二页的bug 159 | * 解决阿里盘搜无法播放的bug 160 | * 解决阿里纸条无法加载的bug 161 | * 解决爱看机器人分类加载不正常的bug,爱看机器人部分无法播放待解决 162 | ---- 163 | 164 | ### V1.0.3.6 - 2024-03-27 165 | * 解决酷云无法打开的bug 166 | ---- 167 | 168 | 169 | ### V1.0.3.5 - 2024-03-27 170 | * 解决proxy代理设置的bug #19 171 | * 使用db替代local所有的方法 172 | * 取消log日志的输出 173 | ---- 174 | 175 | ### V1.0.3.4 - 2024-03-27 176 | * 完成阿里类的资源 177 | ---- 178 | 179 | ### V1.0.3.3 - 2024-03-27 180 | * 日志正常输出,使用数据库管理阿里云盘的缓存信息 181 | ---- 182 | 183 | ### V1.0.3.2 - 2024-03-27 184 | * 使用数据库来存储阿里云盘的值 185 | ---- 186 | 187 | ### V1.0.3.1 - 2024-03-27 188 | * 取消文件写入的日志输出 189 | ---- 190 | 191 | ### V1.0.3.0 - 2024-03-27 192 | * 完成quick js 转 node js代码 193 | ---- 194 | 195 | ### V1.0.2.9 - 2024-03-27 196 | * 同步Gitee分支和Github分支 197 | ---- 198 | 199 | ### V1.0.2.8 - 2024-03-27 200 | * 自动发布支持新版本CatVodOpen源 201 | ---- 202 | 203 | ### V1.0.2.7 - 2024-03-18 204 | * 新增南瓜影视 205 | --- 206 | 207 | 208 | ### V1.0.2.6 - 2024-03-13 209 | * 修复详情界面,返回episodeUrl需要带上VodDetail和episodeId 210 | * 播放页面,解析其他信息 211 | --- 212 | 213 | 214 | 215 | ### V1.0.2.5 - 2024-03-07 216 | * 完成jable所有功能 217 | * 新增虎牙直播源 218 | --- 219 | 220 | ### V1.0.2.4 - 2024-03-06 221 | * 修复阿里云盘分享网的详情图片无法加载的问题 222 | * 新增本地源推送 223 | --- 224 | 225 | ### V1.0.2.4 - 2024-02-29 226 | * 新增磁力狗源 227 | * 新增Jable源 228 | * 更新荐片二级菜单 229 | --- 230 | 231 | ### V1.0.2.3 - 2024-02-29 232 | * 修改影视车新地址 233 | --- 234 | 235 | ### V1.0.2.2 - 2024-02-21 236 | * 支持星视界采集 237 | * 新增电影港采集 238 | --- 239 | 240 | ### V1.0.2.1 - 2024-02-20 241 | * 支持6080采集 242 | --- 243 | 244 | ### V1.0.2.0 - 2024-02-19 245 | * 支持Mp4电影采集 246 | --- 247 | 248 | ### V1.0.1.9 - 2024-02-06 249 | * 以非凡采集作为采集的基础类,后续基于非凡采集开发 250 | * CatVodOpen无法解决皮皮虾M3u8跨域的问题 251 | --- 252 | 253 | ### V1.0.1.8 - 2024-02-06 254 | * 新增加菲猫资源 255 | --- 256 | 257 | 258 | ### V1.0.1.7 - 2024-02-04 259 | * 厂长资源支持阿里云盘和磁力连接播放 260 | --- 261 | 262 | 263 | ### V1.0.1.6 - 2024-02-01 264 | * 去除玩偶哥哥介绍视频 265 | --- 266 | 267 | ### V1.0.1.5 - 2024-02-01 268 | * 电影天堂详情页面解析 269 | --- 270 | 271 | ### V1.0.1.4 - 2024-01-26 272 | * 添加Audiomack音乐爬虫 273 | --- 274 | 275 | ### V1.0.1.3 - 2024-01-26 276 | * 阿里云盘分享首页和类别爬虫 277 | --- 278 | 279 | ### V1.0.1.3 - 2024-01-24 280 | * 待完成色花堂和电影天堂爬虫 281 | --- 282 | 283 | ### V1.0.1.2 - 2024-01-24 284 | * 新增4k资源网站 285 | --- 286 | 287 | ### V1.0.1.1 - 2024-01-24 288 | * 新增量子资源网 289 | --- 290 | 291 | ### V1.0.1.0 - 2024-01-22 292 | * freeok 搜索难点在与验证码的识别 293 | --- 294 | 295 | 296 | ### V1.0.0.9 - 2024-01-19 297 | * 新增OK资源源 298 | --- 299 | 300 | 301 | ### V1.0.0.8 - 2024-01-03 302 | * 阿里云盘分享链接带file id,导致会保存整个分享链接的文件 303 | * 如果有file id,只保存当前文件夹下的文件 304 | --- 305 | 306 | ### V1.0.0.7 - 2024-01-03 307 | * 新增阿里纸条爬虫 308 | --- 309 | 310 | ### V1.0.0.6 - 2024-01-03 311 | * 修复70看看无法播放的bug 312 | * 解决搜索关键词因存在空格导致无法搜索不出结果的bug 313 | --- 314 | 315 | 316 | ### V1.0.0.6 - 2024-01-03 317 | * 新增爱看机器人源 318 | * 新增爱影视源 319 | --- 320 | 321 | ### V1.0.0.5 - 2024-01-03 322 | * 修复阿里字幕的问题 323 | * 阿里云盘初始化时,不在删除文件夹,使用默认的文件夹File ID 324 | --- 325 | 326 | 327 | ### V1.0.0.4 - 2023-12-22 328 | * 完成泥巴的视频播放功能 329 | * 支持自动发布功能 330 | --- 331 | 332 | ### V1.0.0.3 - 2023-12-21 333 | * 支持泥巴首页解析 334 | * ext区分TVBox和CatOpen 335 | * 解决ext的数据类型的bug 336 | * 泥巴二级菜单添加全部按钮 337 | --- 338 | 339 | ### V1.0.0.3 - 2023-12-14 340 | * 支持玩偶二级菜单,支持分类页面下一页 341 | * 支持TVBox接口 342 | * 先初始化阿里云盘,在清空缓存文件 343 | * TV客户端使用requests请求,code为undefined的bug 344 | * 根据Content内容自定义Code码 345 | * 分享文件字幕和视频文件去重复 346 | --- 347 | 348 | ### V1.0.0.2 - 2023-12-14 349 | * 转存文件如果存在,无需在转存一遍 350 | --- 351 | 352 | ### V1.0.0.1 - 2023-12-14 353 | * 完善阿里日志输出 354 | * 完善玩偶哥哥日志输出 355 | --- 356 | 357 | ### V1.0.0.0 - 2023-12-13 358 | * 完成阿里Api的优化,不重复刷新Token 359 | * 修改阿里玩偶的地址 360 | * 阿里玩偶使用req2来进行解析 361 | * 还原index.js内容 362 | * 解决阿里玩偶分类页加载不出来的bug 363 | * 优化阿里Api 364 | * 解决带字幕的bug 365 | --- 366 |
367 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # CatVodOpen和TvBox 2 | 3 | ## 食用前阅读 4 |   授人以鱼不如授人以渔,本仓意指在教会大家学会Spider,也欢迎大家提ISSUE,一起学习一起进步。
5 |   以下资源不能保证内容的合法性、准确性、完整性和有效性,请根据情况自行判断。 6 | 仅用于测试和学习研究,禁止用于商业用途,不得将其用于违反国家、地区、组织等的法律法规或相关规定的其他用途。 7 | 使用任何第三方硬件、软件、所造成的一切后果由使用的个人或组织承担,与本文内容无关。 8 | 所有直接或间接使用本内容的个人和组织,应 24 小时内完成学习和研究,并及时删除本文内容。 9 | 所有基于本内容的源代码,进行的任何修改,为其他个人或组织的自发行为,与本内容没有任何直接或间接的关系,所造成的一切后果亦与本内容和本管理者无关。 10 | 本管理者保留随时更改或补充此免责声明的权利。一旦使用、复制、转载、发布、修改了本文内容,则视为您已接受此免责声明。否则后果自负。 11 | 本接口无公众号、无盈利、无引流、免费分享给小白使用,请勿轻信他人,谨防上当受骗。 12 | 13 | [使用教程见Wiki](https://github.com/jadehh/TVSpider/wiki) 14 | 15 | ## TVBox互联网发布地址 16 | [TV发布地址](https://github.com/FongMi/Release/tree/main/apk/release) 17 | ```bash 18 | https://gh.con.sh/https://raw.githubusercontent.com/jadehh/TVSpider/js/tv_config.json 19 | ``` 20 | > 配置信息见js分支分支 21 | 22 | 23 | ## CatVodOpen 24 | [CatVodOpen发布地址](https://github.com/catvod/CatVodOpen/releases) 25 | 26 | > 注意使用Gitee或Github导入,并设置为私有仓库,CatVodOpen仅支持私有仓库 27 | 28 | V1.1.3版本以上 29 | ```bash 30 | gitee://Token@gitee.com/jadehh_743/TVSpider/dist/index.js.md5 31 | ``` 32 | **改动** 33 | 34 | * quickjs改为nodejs,proxy设置修改 35 | * 在ios上无法使用local,使用db替换local所有方法 36 | * nodejs 的优势在于更加灵活 37 | > 配置信息见dist分支 38 | 39 | V1.1.2版本以下 40 | ```bash 41 | gitee://Token@gitee.com/jadehh_743/TVSpider/js/open_config.json 42 | ``` 43 | > 配置信息见js分支分支 44 | 45 | 46 | ## config文件生成 47 | ```bash 48 | python build.py --aliToken aliToken 49 | ``` 50 | > Token如果失效,需要重新获取阿里Token 51 | > 52 | > [阿里Token获取](https://alist.nn.ci/zh/guide/drivers/aliyundrive.html) 53 | > 54 | > nodejs 部分只生成代码,需要手动build,区分18+ 55 | 56 | ## 直播源生成 57 | > 见[jadehh/LiveSpider](https://github.com/jadehh/LiveSpider) 58 | 59 | 60 | ## 遇到的问题 61 | * 玩偶姐姐播放不了,需要切换VPN节点 62 | * m3u8遇到跨域的问题可以尝试使用代理来进行加载,如果没有跨域使用代理会引起死循环 63 | * 虎牙弹幕功能无法实现,现在并不支持WebSocket来监听弹幕 64 | * SP360启用嗅探解析,CatVodOpen目前还不支持嗅探 65 | * CatVodOpen Windows无法预览Jable和Doll图片,需要手动开启代理加载。 66 | * TV影视暂不不支持哔哩哔哩DASH文件播放 67 | * 老版本的CatVodOpen cfg参数类型为:string,TV参数类型为[object],所有需要区分,初始化的时候还是用this.cfgObj 68 | 69 | ## 特别说明 70 | * 近期CatVodOpen更新移除了quickjs,导致无法使用,请尝试使用旧版本 71 | * 或切换至nodejs目录下编译生成dist目录,dist目录发布到dist分支下 72 | * main分支用于代码测试(不包含任何配置信息),js分支发布支持quickjs爬虫配置信息,dist分支发布支持nodejs爬虫配置信息 73 | * 所有的配置信息都通过Github Actions发布,通过创建tag来生成新的配置信息并自动发布 74 | * fork仓库时去掉仅复制main分支的✔,这样就可以fork所有的分支了 75 | 76 | ## ✨ Star 数 77 | 78 | [![Star History Chart](https://api.star-history.com/svg?repos=jadehh/TVSpider&type=Date)](https://star-history.com/#jadehh/TVSpider&Date) 79 | --- 80 | 81 | ## 飞机群 82 | 83 | 加入我们吧 84 | 85 | telegram 86 |









87 | 88 | ---- 89 | 90 | ## 赞助 91 | 92 | 如果觉得此项目有用,可以考虑赞助我喝杯咖啡,感谢star❤ 93 | 94 | 微信 -------------------------------------------------------------------------------- /assets/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadehh/TVSpider/d740cb717859dae415d2f3d757147e62dce6a0ca/assets/image.png -------------------------------------------------------------------------------- /js/asianx.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @Author: samples jadehh@live.com 3 | * @Date: 2023-12-14 11:03:04 4 | * @LastEditors: samples jadehh@live.com 5 | * @LastEditTime: 2023-12-14 11:03:04 6 | * @FilePath: js/asianx.js 7 | * @Description: asianx 8 | */ 9 | 10 | 11 | import {Spider} from "./spider.js"; 12 | import {Crypto, _, load} from "../lib/cat.js"; 13 | import {VodDetail, VodShort} from "../lib/vod.js"; 14 | import * as Utils from "../lib/utils.js"; 15 | 16 | class AsianXSpider extends Spider { 17 | constructor() { 18 | super(); 19 | this.siteUrl = "https://cn.asianx.tube/" 20 | } 21 | 22 | 23 | getName() { 24 | return "🔞┃海外宅┃🔞" 25 | } 26 | 27 | getAppName() { 28 | return "海外宅" 29 | } 30 | getJSName() { 31 | return "asianx" 32 | } 33 | 34 | getType() { 35 | return 3 36 | } 37 | 38 | async getFilter($) { 39 | let navElements = $($("[class=\"menu m-0 mb-2 mb-lg-0\"]")).find("a").slice(6) 40 | let extend_dic = {"key": "1", "name": "分类", "value": [{"n": "全部", "v": "全部"}]} 41 | for (const navElement of navElements) { 42 | let type_name = $($(navElement).find("span")).text() 43 | let type_id = navElement.attribs["href"] 44 | extend_dic["value"].push({"n": type_name, "v": type_id}) 45 | } 46 | return [extend_dic] 47 | } 48 | 49 | async parseVodShortListFromDoc($,is_home=false) { 50 | let vod_list = [] 51 | let vodShortElements; 52 | if (is_home){ 53 | vodShortElements = $($("[class=\"gal-box\"]")).slice(12) 54 | }else{ 55 | vodShortElements = $($("[class=\"gal-box\"]")) 56 | } 57 | for (const vodShortElement of vodShortElements) { 58 | let vodShort = new VodShort() 59 | let vodElements = $(vodShortElement).find("a") 60 | vodShort.vod_id = vodElements[0].attribs["href"] 61 | vodShort.vod_pic = $(vodElements[0]).find("img")[0].attribs["data-src"] 62 | vodShort.vod_name = vodElements[1].attribs["title"] 63 | vodShort.vod_remarks = $($(vodShortElement).find("[class=\"meta text-muted text-truncate\"]")).text() 64 | vod_list.push(vodShort) 65 | } 66 | return vod_list 67 | } 68 | 69 | async parseVodDetailFromDoc(html) { 70 | let vodDetail = new VodDetail(); 71 | let content = Utils.getStrByRegex(/