群晖docker容器nas-tools 2.9.1 豆瓣【想看】获取不到数据的解决方案
2023-09-09 23:10:18
首先,感谢OpenSourcerX大佬的文章(https://post.smzdm.com/p/a25r6neq/),成功帮我解决了nas-tools不能更新豆瓣“想看”订阅的问题。由于OpenSourcerX大佬的文章提到的方法对小白来说太简略了,所以想在这里详细展开。
【本人为白群晖DSM 7.2,Container Manager(原docker)nas-tools 2.9.1】
最近豆瓣更新,导致nastools点击获取豆瓣想看的数据老是不成功。
根据大佬的意见,只需要
【解决这个问题需要找到 nastool 容器文件夹 /merged/nas-tools/app/media/doubanapi/ 中 webapi.py 文件,将里面的代码:"list": "//div[@class='grid-view']/div[@class='item']" 改成 "list": "//div[@class='grid-view']/div[contains(@class,'item')]",这里需要将“do 在看,wish 想看,collect 看过”三行代码都替换一下,然后保存,重启nastools即可】
修改的地方就是加了contains,然后加了前后括号,中间的等于号改成逗号,注意都要用英文半角。
但是后续来了2个问题
问题一:找不到这个文件夹,所以无法找到这个webapi.py文件
在File Station里面搜索,找不到这个文件,估计是Linux系统的文件。
打开群晖控制面板--终端机和SNMP--勾选启动SSH功能。
通过ssh工具(我是用PuTTY),连接nas
连接后,是一个类似dos的界面,输入账号、密码登陆后可以使用。(注意输入密码的时候,屏幕是不会显示字符的,不要以为坏了,照输入就行)
然后,就想办法在Linux系统文件里面找到“doubanapi”的文件夹。Linux系统我也不熟,只好用魔法打败魔法(chatgpt之类的工具)。百度的文心一言现在开放了,其他功能不知道怎样,应付简单的编程语言还是挺不错了的,甚至还很惊艳~
因为我一直找不到那个文件夹,所以我直接问他,群晖docker安装了nastools,怎么找到doubanapi的文件夹,回答思路很清晰,方法很有效。
首先docker ps列出容器的名称(你自己知道名称的话可以不列出来,就是编辑容器的时候,你为他改的那个或者是默认的那个名称;这里还有个问题,如果报错,可能就是当前登陆权限不够,可以用sudo docker ps命令,超级管理员);然后,进入容器的Shell环境,比如我的容器名称是nastool-old,则输入sudo docker exec -it nastool-old /bin/bash命令(前面加了sudo因为权限问题,当前登陆账号够权限应该可以不加),进入Shell环境后, find / -type d -name "doubanapi"可以找到这个文件夹在什么位置。
普及两个简单命令,ls表示罗列当前目录下面有什么,cd的用法跟dos的差不多,就是改变当前操作对应的目录,一直改变目录到doubanapi下面,就可以看到有webapi.py这个文件。
问题二:找到webapi.py文件,怎么编辑
这里又要百度一下了,Linux系统下面,编辑文件,比较复杂。通过cd切换到doubanapi目录下面,输入vi webapi.py,可以打开vi编辑程序。vi编辑程序又是比较奇怪的操作,分两种状态,进入程序后,按一下字母“i”,进入编辑状态,可以进行插入、删除等编辑;编辑完成后,按键盘左上角“Esc”,退出编辑状态,进入命令行模式,命令行模式输入“:wq"可以保存退出(注意前面有个冒号)。当前是何种模式,请留意观察类似dos界面的东西的左下角的提示。另外,本文涉及需要要修改的三个地方,分别在第81、90、99行。(具体的vi用法,可以百度“Putty下使用vi编辑器编写”看看)
这个i表示现在是编辑(insert)模式
退出编辑模式后,输入冒号后输入wq可以保存退出
保存后,重启nas-tools,完美解决,大功告成。
还没有评论,来说两句吧...