从 Plex 的“最近添加”部分删除视频

ale*_*ird 3 python sqlite plex

是否可以从 Plex 的“最近添加”部分中删除视频?我想将一些旧视频添加到我的服务器中以供后代使用,但不让它们显示为新添加的。

ale*_*ird 9

当我最初寻求这个问题的答案时,我查看了支持论坛,包括 Plex 自己的论坛和 Reddit。所有答案都说这是不可能的,或者建议直接编辑metadata_itemsSQLite 数据库的表(恶心)。此后我找到了一种更好的方法来执行此操作,但这些支持线程现在已锁定,因此我无法在那里共享此解决方案。希望在这里回答这个问题可以帮助其他人找到它。

这实际上是可能的,并且通过 REST API 非常容易。第一的,pip install plexapi。然后使用以下脚本更新addedAt您选择的视频的字段。

import os
import sys

from plexapi.myplex import MyPlexAccount

USERNAME = os.environ.get("PLEX_USERNAME")
PASSWORD = os.environ.get("PLEX_PASSWORD")

account = MyPlexAccount(USERNAME, PASSWORD)
plex = account.resource("<YOUR_PLEX_HOSTNAME>").connect()

library = plex.library.section("<YOUR_PLEX_LIBRARY_NAME>")
video = library.get(title="<YOUR MOVIE TITLE>")

updates = {"addedAt.value": "2018-08-21 11:19:43"}

video.edit(**updates)
Run Code Online (Sandbox Code Playgroud)

就是这样!我们在这里所做的是将addedAt值更改为较旧的值,因为“最近添加”是按此日期排序的,因此我们将视频移动到该行的后面。


小智 5

亚历克斯德莱尔德的建议对我来说非常有效!我必须做出一项更改,我相信这是因为我的 Plex 帐户上有 2FA:

import os 
import sys
import plexapi

from plexapi.server import PlexServer
baseurl = 'http://plexserver:32400'
token = 'YOUR PLEX TOKEN'
plex = PlexServer(baseurl, token)
library = plex.library.section("Movies")
video = library.get(title="MOVIE NAME")
updates = {"addedAt.value": "2018-08-21 11:19:43"}

video.edit(**updates)
Run Code Online (Sandbox Code Playgroud)