GithubHelp home page GithubHelp logo

kikoeru-project / kikoeru-express Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yodhcn/kikoeru-express

568.0 568.0 48.0 1.14 MB

kikoeru 后端

License: GNU General Public License v3.0

JavaScript 98.94% Dockerfile 1.06%

kikoeru-express's People

Contributors

cha0scat avatar mason1900 avatar umonaca avatar yodhcn 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

kikoeru-express's Issues

[Feature request] Add the ability to change the UI language

Currently, there doesn't appear to be a way to change the UI language, as the language settings seems to be for the metadata of the works only.

Ideally, the settings would offer the same variety for the UI language as the metadata language options.

翻译作品中声优一项会显示为 N/A

问题描述

在 Dlsite 中无声优的相关信息的翻译作品(如 RJ317129RJ316334)在 kikoeru 中会显示为 N/A(见截图)
错误信息

版本

  • 系统:Windows 10 20H2
  • 安装方式:Windows打包版
  • 浏览器:Chrome/Safari
  • 程序版本:v0.6.0-rc.4

截图

image

[Bug] 刮削含有多国语言的翻译作品时标题最后会加上「日元」

问题描述

刮削一些在 Dlsite 页面有多语言版本选择的作品(见截图 1)时,标题最后会多加上「日元」二字(见截图 2),不论翻译版还是原版。
错误信息

版本

  • 系统:Windows 10 20H2
  • 安装方式:Windows打包版
  • 浏览器:Chrome/Safari
  • 程序版本:v0.6.0-rc.4

截图

image
image

Typo

Typo db/supdated_at

[Feature request] 标签多语言支持

目前标签可以选择语言,但不能切换(例:扫描时选择中文标签,之后想用日语显示,只能重新扫描)。
可能的处理方法:本地建立个多语言对应标签的字典;或者扫描时爬取所有语言,之后显示时按需求切换。

好处:搜索时可以使用任意语言,得到同样结果(例:搜索"舔耳"或"耳舐め",返回同一作品列表)。

[Feature request]同屏显示更多音声作品

现在最多同时显示四列,能否增加一下列数,比如同时显示六列,七列?
或者像DL Play一样仅显示封面,不显示其他信息,这样同屏能显示几十个音声作品,方便挑选

版本升级后,数据库丢失

    老哥你好。
    由于我之前是从v0.3.0的版本升级到V0.5.6,当时不知道如何做数据迁移,只能重新扫描添加。

今天,看到v0.5.7更新,就在上午的时候把v0.5.6的 config、sqlite、covers三个文件夹复制了过来,并在设置里面更改了封面储存的地方。上午使用v0.5.7的时候,一切正常。下午再次使用,cmd里面显示成功构建了数据库,这个时候登陆localhost界面,所有的作品已消失,又不得不重新扫描添加。
想问下老哥现在版本的数据迁移该怎么做?谢谢老哥。

添加 RJ311747 后除封面外无其他任何元数据

本地系统: Windows 10 20H2 专业版

软件版本: 0.5.4-win-x64 (使用 pm2 启动)

问题描述:添加 RJ311747 后,在主界面只能显示出封面,没有显示标题等其他信息(见截图 1),进入这部作品之后,弹出消息提示 ”There is no work with id 311747 in the database.“,但能正常显示文件(见截图 2) 。已经尝试删除作品重新添加以及更换元数据语言,都没有用。其他同一时间添加的作品正常。

截图:
image
image

[Bug] Mac OS版兼容性问题

➜ 发现新文件夹: "/Volumes/好物坚牢/VOICE/VoiceWork/RJ314382"
➜ 从 DLSite 抓取元数据...
➜ 元数据抓取成功,准备添加到数据库...
➜ 在插入元数据过程中出错: insert or ignore into t_va (id, name) values ('72c29581-496f-593e-871e-71bf1a2084e2', '来夢ふらん') - SQLITE_MISMATCH: datatype mismatch
➜ 添加失败! Failed: 1

Mac 0.6.0RC3

[Feature request]增加打开文件夹开关

起因是有很多汉化音声是mp4的形式,或者mp3+lrc的形式,在kikoeru内部听的话视频/字幕显示不出来
如果能有一个开关可以直接打开当前查看的音声所在的文件夹就方便很多啦
现在遇到这种情况我要记RJ号再去Voicework文件夹里面翻,放了几百个文件夹之后挑起来容易眼花

感谢大大!

[功能请求] 点播放器封面跳转相应作品

·兴冲冲下了发现不显示aac格式 只好打肿脸充胖子 aac更名mp3

·本地的情况下能一键打开相关音声的本地文件,能直接调度本地播放器就更好了
服务器整合音声这点功能就非常奈斯,但服务器端不能增幅音量,一些音声音量小的可怕

·迷你播放器 在播放时点标题/封面能返回相关音声项目
并不是很急需的功能就是操作逻辑上的问题,有时候翻着翻着音声找不回去了……能显示个RJ号也好方便搜索啊

[Feature request] 排序增加正序反序

1:收集了许多音声想要清理的时候,按照评分排序没法快速拉到最底下。

有正反序后,就可以很容易的根据价格,评分,发售数等数据来进行清理了。

2:目前详情界面看不出来是否是R18还是全年龄的。

或许从dlsite爬取数据的时候,可以加上年龄指定那一项保存。信息显示的地方我觉得可以放在列表封面左上角编号的后面,“R18 R18G 全年龄”

使用 https 访问除音乐格式外的文件时弹出 404

本地系统: Windows 10 20H2 专业版

软件版本: 0.5.5-win-x64 (使用 pm2 启动)

问题描述:原来使用 nginx 反代 http 后,访问 kikoeru 的 txt、jpg 等格式文件时,显示 404(见截图)。使用局域网 ip 访问没有任何问题,怀疑是否是因为 nginx 的配置不正确的问题,而转向使用 kikoeru 自带的 https 来搭建,但是仍然无法访问。下面附上我的 nginx.conf 和 kikoeru/config.json 的相关字段。

屏幕截图
image

nginx.conf

http {
    include       mime.types;
    default_type  application/octet-stream;
    server_names_hash_bucket_size 64;
    server_tokens off;

    log_format  emby  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for" $request_time $server_port "$http_x_emby_authorization"';


    log_format default '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for" $request_time $server_port';

    sendfile        off;  

    gzip on;   
	gzip_disable "msie6";

	gzip_comp_level 6;
	gzip_min_length 1100;
	gzip_buffers 16 8k;
	gzip_proxied any;
	gzip_types
	    text/plain
	    text/css
	    text/js
	    text/xml
	    text/javascript
	    application/javascript
	    application/x-javascript
	    application/json
	    application/xml
	    application/rss+xml
	    image/svg+xml;

    proxy_connect_timeout 1h;
    proxy_send_timeout 1h;
    proxy_read_timeout 1h;
    tcp_nodelay on;  

server {

    listen [::]:443 ssl http2;	
    listen 443 ssl http2;	
    proxy_buffering off;        

    server_name xxxxxxxxx;    

    error_page 497 301 =307 https://$http_host$request_uri;

    access_log  logs/kikoeru.log  default;  

        ssl_session_timeout 30m;
        ssl_protocols TLSv1.2 TLSv1.1 TLSv1;
	ssl_certificate      xxxxxx.crt;  
	ssl_certificate_key  xxxxxx.key;  
        ssl_session_cache shared:SSL:10m;

     location ^~ /swagger { 
        return 404;
}

     location / {
        proxy_pass http://127.0.0.1:8888; 

	proxy_hide_header X-Powered-By;	 
	proxy_set_header Range $http_range;  
	proxy_set_header If-Range $http_if_range;  
	proxy_set_header X-Real-IP $remote_addr;  
        proxy_set_header Host $host;  
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  

	add_header 'Referrer-Policy' 'origin-when-cross-origin';
	add_header Strict-Transport-Security "max-age=15552000; preload" always;
	add_header X-Frame-Options "SAMEORIGIN" always;
	add_header X-Content-Type-Options "nosniff" always;
	add_header X-XSS-Protection "1; mode=block" always;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;
    }
}

kikoeru/config.json

{
	"maxParallelism": 16,
	"rootFolders": [
		{
			"name": "Dliste",
			"path": "F:\\Voices\\Dlsite"
		}
	],
	"coverFolderDir": "C:\\Users\\AppData\\Local\\Programs\\kikoeru\\covers",
	"databaseFolderDir": "C:\\Users\\AppData\\Local\\Programs\\kikoeru\\sqlite",
	"auth": true,
	"md5secret": "xxxxxxxxxxx",
	"jwtsecret": "xxxxxxxxxxx",
	"expiresIn": 2592000,
	"scannerMaxRecursionDepth": 2,
	"pageSize": 12,
	"tagLanguage": "zh-cn",
	"retry": 5,
	"dlsiteTimeout": 10000,
	"hvdbTimeout": 10000,
	"retryDelay": 2000,
	"httpProxyHost": "",
	"httpProxyPort": "",
	"version": "0.5.5",
	"listenPort": 8888,
	"skipCleanup": false,
	"httpsEnabled": true,
	"httpsPrivateKey": "xxxxxxx.key",
	"httpsCert": "xxxxxxxxx.crt",
	"httpsPort": 8443
}

添加RJ305000时出现错误

添加RJ305000时出现错误
版本为v0.5.2,运行环境为群晖Docker

另外非常感谢维护更新

➜ 发现新文件夹: "/usr/src/kikoeru/Folders/VoiceWork/【TS百合】先輩が私だけに教えてくれた百合の秘密【バイノーラル】 RJ305000"
➜ 从 DLSite 抓取元数据...
➜ 元数据抓取成功,准备添加到数据库...
➜ 在插入元数据过程中出错: insert into t_work (circle_id, dir, dl_count, id, nsfw, price, rank, rate_average_2dp, rate_count, rate_count_detail, release, review_count, root_folder, title) values (4303, '【TS百合】先輩が私だけに教えてくれた百合の秘密【バイノーラル】 RJ305000', '24', 305000, true, 990, NULL, NULL, NULL, '[]', '2021-01-28', 0, '音声', '生意気ギャル妹とヒミツの関係☆-童貞アニキに女の子を教えてあげる-') - SQLITE_CONSTRAINT: NOT NULL constraint failed: t_work.rate_count
➜ 添加失败! Failed: 1

[Feature request] 多语言支持

目前标签可以选择语言,但不能切换(例:扫描时选择中文标签,之后想用日语显示,只能重新扫描)。
可能的处理方法:本地建立个多语言对应标签的字典;或者扫描时爬取所有语言,之后显示时按需求切换。

好处:搜索时可以使用任意语言,得到同样结果(例:搜索"舔耳"或"耳舐め",返回同一作品列表)。

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.