Git Product home page Git Product logo

animesearcher's Introduction

- Anime Searcher -

简介

整合第三方网站的视频和弹幕资源, 提供最舒适的看番追剧体验

番剧、国漫、电影、美剧、日剧、韩剧、泰剧,应有尽有,甚至还可以看 CCTV 和地方卫视台~

资源丰富, 更新超快, 不用下载, 在线观看, 再也不用去那些飘满广告的网站或者网盘找资源了

自动匹配第三方网站的弹幕, 看番怎能少了弹幕, 就算是白嫖我们也要嫖出 VIP 一般的体验( •̀ ω •́ )✧

我们致力于成为全功能的资源检索工具, 接下来会加入漫画和音乐搜索功能, 敬请期待...

界面

*可能不是最新界面, 请以实物为准(笑)

1.png 2.png 3.png 4.png 5.png 6.png

下载

Windows

蓝奏云下载
Gitee国内镜像

Linux/MacOS

git clone https://github.com.cnpmjs.org/zaxtyson/AnimeSearcher.git
cd AnimeSearcher
pip install -r requirements.txt
python app.py

使用浏览器打开 web/index.html 即可

自建服务器

按注释提示修改 config.py

git clone https://github.com.cnpmjs.org/zaxtyson/AnimeSearcher.git
cd AnimeSearcher
python3.8 -m pip install -r requirements.txt
nohup python3.8 app.py &
  • 服务器端可能存在多个 Python 版本,请使用 Python3.8+ 运行
  • 本程序仅为本地运行设计, 在服务器端运行可能存在某些安全隐患, 请留意
  • 如果视频存在防盗链或者存在跨域问题, 会切换至 API 代理, 此时服务器需要从远程读取数据流返回给用户, 可能给服务器的带宽造成压力, 请不要公开您的 IP 或者域名
  • API 使用 6001 端口, 请确保防火墙或者ECS安全组规则放行
  • API 提供了的简易播放器, 但是 WebUI 提供了更好的交互性体验, 使用浏览器打开 web/index.html, 在主页最下方设置 API 服务地址即可使用
  • WebUI 暂未适配移动端, 界面等待下一个版本的重构, 敬请期待

模块扩展

程序目前包括视频、弹幕解析模块, 后面会加入音乐、漫画等解析模块

在 API 的支持下, 您可以很容易的编写一个资源解析模块, 扩展程序的功能

欢迎提交 PR, 但是请提交稳定优质的资源哦 :)

Anime-API

API 文档

维护

如果有建议或者吐槽, 请找对人哦~~

更新日志

v1.4.3

  • 新增视频引擎 4K鸭奈菲(4Kya)
  • 新增视频引擎 Lib在线(libvio)
  • 新增视频引擎 阿房影视(afang)
  • 修复视频引擎 AgeFans 域名映射异常的问题
  • 修复视频引擎 ZzzFun 部分视频无法播放的问题
  • 修复视频引擎 bimibimi 无法搜索和播放的问题
  • 修复视频引擎 K1080 部分视频无法播放的问题
  • 弃用视频引擎 Meijuxia, 质量太差
  • 弃用视频引擎 bde4

v1.4.2

  • 修复视频引擎 K1080 失效的问题

v1.4.1

  • 修复视频引擎 ZzzFun 资源迁移导致无法使用的问题
  • 修复视频引擎 K1080 部分视频无法播放的问题
  • 修复视频引擎 樱花动漫(yhdm) 域名变更的问题
  • 视频视频引擎 哔嘀影视(bde4) 切换备用域名
  • 过滤视频引擎 AgeFans 部分无效视频源
  • 过滤弹幕引擎 爱奇艺(iqiyi)腾讯视频(tencent) 无关搜索结果
  • 修复弹幕引擎 哔哩哔哩(bilibili) 部分番剧弹幕抓取失败的问题#12
  • 移除失效视频源 eyunzhu 和弹幕源 哔咪哔咪(bimibimi)

v1.4.0

  • 支持 HLS 格式视频流量代理, 支持混淆流量解码
  • 对经常被墙的网站做了 A 记录, 防止域名失效, 加快 DNS 解析速度
  • 新增视频搜索引擎 哔嘀影视(bde4)
  • 新增弹幕搜索引擎 爱奇艺(iqiyi)
  • 修复引擎 k1080, meijuxia, 与官方保存同步
  • 修复 优酷(youku) 弹幕搜索无结果的问题
  • 修复 哔哩哔哩(bilibili) 120分钟之后无弹幕的问题#9
  • 修复 ZZZFun 播放路线1

v1.3.1

  • 过滤了 k1080 部分无效视频
  • 修复了[弹幕显示区域]设置项无法保存的问题
  • 使用续命大法修复部分源播放途中直链失效的问题

v1.3.0

  • API 完全改用异步框架重构, 效率大幅提升, 支持服务器端部署
  • 修复了几个番剧模块出现的问题, 与源网站同步更新
  • 修复了弹幕库的一些问题, 结果更多更准, 过滤了弹幕中无关的内容
  • 修复了直链有效期太短导致视频播到一半失败的问题
  • UI 改进, 用户体验更佳, 支持连接远程服务器

v1.1.8

  • 新增引擎 k1080p
  • 修复 youku 某些弹幕解析失败的问题
  • 修复 bilibili 用户上传视频弹幕解析失败的问题
  • 修复 bahamut 网站更新导致弹幕抓取失败的问题
  • 搜索结果异步加载, 体验大幅上升
  • 历史记录功能增强, 自动解析上次访问页面
  • 界面、播放器、弹幕显示、快捷键等多处细节优化
  • 程序主界面不再显示控制台

v1.0.0

  • 修复 agefans 无法访问的问题(被墙)
  • 外挂弹幕支持
  • 弹幕显示优化
  • 支持播放历史记录

v0.9.9

  • 修复 Windows 安装版中弹幕源 bahamut 繁简体转换异常的问题
  • 修复引擎 bimibimi 部分视频解析失败的问题和弹幕 undefined 的问题
  • 修复 zzfun 接口变化导致无法播放视频的问题
  • 修复 agefans 视频无法解析的问题
  • 新增弹幕源 youku
  • 新增弹幕源 tencent
  • 新增资源引擎 meijuxia
  • 补充 bilibili 影视区弹幕
  • UI 美化, 新增一套主题
  • 主页番剧更新列表
  • IPTV 直播(CCTV/地方台)

animesearcher's People

Contributors

zaxtyson avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

animesearcher's Issues

linux下报错

Traceback (most recent call last):
  File "ui.pyw", line 45, in <module>
    ui = SimpleUI()
  File "ui.pyw", line 17, in __init__
    self.init_ui()
  File "ui.pyw", line 22, in init_ui
    self.ui.wm_iconbitmap(f"{PATH}/logo.ico")
  File "/usr/lib/python3.8/tkinter/__init__.py", line 2071, in wm_iconbitmap
    return self.tk.call('wm', 'iconbitmap', self._w, bitmap)
_tkinter.TclError: bitmap "/home/poly/AnimeSearcher/logo.ico" not defined

已经安装好依赖包 python: 3.8

忽然用不了了。?

Hi,
非常感谢你们的开发,海外党直接就是一个吹的爆。之前用着非常的巴适,今天打开之后不知道为什么用不了了,具体就是,不管搜索什么都是显示0条结果。试了linux和windows以及改localhost端口啥的包括清理缓存,还是啥都搜不到,救救孩子我想看番

一些优化建议

大佬好,体验过程中,发现这样一些对于服务器端运行不友好的问题,希望能够在下版本得到解决。
1.主页番表更新不显示图片(跨域问题),暂时解决:<meta name="referrer" content="no-referrer" />
2.开启https协议,并修改前后端相应代码后,可以正常访问和搜索,但视频和弹幕无法加载。为了云端的传输安全,建议对此优化。
3.视频播放界面,如果播放了一个已经失效的资源,则用户再次切换同一视频源的另一合集有效视频时,还是提示失效。(强制刷新正常播放)

HTTPS问题

我将此项目部署到了我的服务器上并配置了SSL证书开启了HTTPS
但该项目有些资源是http协议 会被blocked
麻烦修复谢谢

弹幕显示问题(有图)

观看2小时以上长度的影片,弹幕列表显示弹幕到1:59:52后就没了,之后的弹幕似乎无法显示。(弹幕源是b站)

经过nginx反向代理后,接口返回的URL错误

config.py 使用默认选项

host = "127.0.0.1"
port = 6001
domain = "http://localhost"

nginx 的部分配置:

  location /anime-api {
    proxy_redirect off;
    proxy_pass http://127.0.0.1:6001/;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $http_host;

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }

GET /anime-api/anime/search/hello

[
    {
        "category": "\u641e\u7b11/\u65e5\u5e38",
        "cover_url": "http://puui.qpic.cn/fans_admin/0/3_380704150_1578035783024/0",
        "description": "",
        "module": "api.anime.zzzfun",
        "score": 80,
        "title": "Hello!! \u9ec4\u91d1\u62fc\u56fe",
        "url": "http://localhost:6001/anime/7a7a7a66756e7c333931"
    },
    {
        "category": "\u604b\u7231",
        "cover_url": "https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2594685581.jpg",
        "description": "",
        "module": "api.anime.zzzfun",
        "score": 80,
        "title": "HELLO WORLD",
        "url": "http://localhost:6001/anime/7a7a7a66756e7c31383633"
    }
]

可以看到url部分错误,应该为http://$HOST/anime-api/anime/*
修改domain = "http://$HOST/anime-api/"返回url为http://$HOST/anime-api/:6001/anime/*
修改port = 80,报端口被nginx占用

服务器上的播放问题

  • 我将项目放在服务器上后(已按 @lozyue大佬的方法配置好了 ,后台用的是anime-api,前端访问直接放了web文件夹),可以远程访问,也读取的到数据,但是无法播放,通过抓包后发现:如果在demo.py中填写rt.listen的ip为我的内网地址(172.28.45.85),添加rt.set_domain("...")语句(这里的代表我服务器的外网地址),则在解析播放地址的时候会多出一个外网地址,导致解析失败,例:http://...:6001/...*:6001/video/af5fc9d1a0ffab847b07788eb392d6da/proxy_player。

  • 如果在demo.py中填写rt.listen的ip为我的内网地址(172.28.45.85),并且没有添加rt.set_domain("...")语句,则解析的播放地址不会多出一个外网地址,但是解析地址的host是我的内网地址,也无法解析,例:http://172.28.45.85:6001/video/af5fc9d1a0ffab847b07788eb392d6da/proxy_player

  • 如果能得到解答真的是太谢谢了

FreeBSD上出现错误

在运行python3.8 -m pip install -r requirements.txt后出现。
用3.7和3.9出现同样问题,似乎是说没有这个版本?
IMG_20210313_213329

一个小小的建议

建议开头加上
#!/bin/python
或者其他更好的写法

不然可能会当成 shell 脚本运行。。。

请将pip install 变更至 pip3 install,python更改为python3.8

rt,直接pip install装完之后老提示不对,然后包括后面python运行也报错 SyntaxError: invalid syntax,此时若以python3 app.py运行直接会报各种库缺失。我改为pip3 install+python3.8 app.py之后才可以正常使用,感觉是因为系统自带的是2.7的python?

想请教开发者一个问题

运行打包好的版本后,在浏览器中是使用 file:// 这样的协议访问的。

请问这是什么原理呢。。这样是如何请求到服务端 api 的呢?

关于运行app.py时的库缺失报错

使用pip install -r requirements.txt安装库时出现了许多报错,故手动逐条安装requirements.txt中的库。但是运行app.py时依然出现了数次库缺失的报错,都按照报错内容安装了对应库。但最终这个“google”库缺失的问题无法解决,因为通过pip list,我可以确定“google”库正确安装了。希望获知原因。python 版本3.8.5
Traceback (most recent call last): File "D:\Applition\MST\AnimeSearcher-master\app.py", line 1, in <module> from api.router import APIRouter File "D:\Applition\MST\AnimeSearcher-master\api\router.py", line 9, in <module> from api.core.agent import Agent File "D:\Applition\MST\AnimeSearcher-master\api\core\agent.py", line 8, in <module> from api.core.scheduler import Scheduler File "D:\Applition\MST\AnimeSearcher-master\api\core\scheduler.py", line 7, in <module> from api.core.loader import ModuleLoader File "D:\Applition\MST\AnimeSearcher-master\api\core\loader.py", line 15, in <module> class ModuleLoader(object): File "D:\Applition\MST\AnimeSearcher-master\api\core\abc.py", line 11, in singleton instance = cls() File "D:\Applition\MST\AnimeSearcher-master\api\core\loader.py", line 33, in __init__ self.load_full_module(module) File "D:\Applition\MST\AnimeSearcher-master\api\core\loader.py", line 40, in load_full_module self.load_search_module(module) File "D:\Applition\MST\AnimeSearcher-master\api\core\loader.py", line 47, in load_search_module py_module = import_module(module) File "C:\Users\Misachu\anaconda3\lib\importlib\__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "D:\Applition\MST\AnimeSearcher-master\api\danmaku\bilibili\__init__.py", line 4, in <module> from google.protobuf.json_format import MessageToDict ModuleNotFoundError: No module named 'google'

前端代码没有开源?

你好,目前仓库中的前端代码是打包后的js文件,没有找到用于本地构建的源码,请问是否是遗漏了?

网站资源多线路而且还有多个解析接口的问题

描述:我写好了一个新网站的资源引擎,但是稍微有一点问题,那个网站的对于同一个资源可能有多个资源链接,每个链接还有多个解析端口(例:第一集有阿里云的资源链接,还有腾讯云的资源链接,阿里云的那个资源链接可以用解析接口1播放,也可以用解析接口2播放,但是偶尔有些资源用某些接口解析不了)
问题:我现在是把每一个资源的资源链接放在一起作为一个播放线路(接口为默认获取的那个),但是这样的话如果这个资源链接的默认解析接口无法播放,我就无法切换成另一个接口了(不知道如何展现其他解析接口)。
我的想法:1.不修改前端框架的前提下,好像只能直接把其他的解析接口放到各条线路中(例:播放线路1:第一集、第一集备用解析接口1、第一集备用解析接口2),但是这样好像很不美观,所以不太想这么写。2.修改前端代码,将其他解析接口放在播放器下方(例:播放第一集的时候,播放器下方显示第一集备用解析接口1、第一集备用解析接口2),但是这样的话,感觉也会让使用者感觉不舒服,因为还有其他的线路。。
不知道两位大佬 @zaxtyson @lozyue 有没有什么想法呢,期待+感谢~

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.