zilexa

FLEXGET CONFIG FOR TV SHOWS AND MOVIES

Apr 4th, 2014
329
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.85 KB | None | 0 0
  1. variables: secrets.yml
  2. schedules:
  3. ##### YOUR TORRENT CLIENT SHOULD RUN THIS COMMAND AFTER EVERY DOWNLOAD: PATH_TO_flexget/bin/flexget execute --tasks find-* move-*
  4. ##### Alternatively uncomment this task to process downloaded files every 30min.
  5. # - tasks: [ 'find-*', 'move-*']
  6. # interval:
  7. # minutes: 30
  8. ##### Every day at 2AM, check nextep to search (necessary if you added a new show to the list but have already watched it partly) and find subtitles attempt #2 (without original name).
  9. - tasks: ['*-nextep', get-subtitles]
  10. schedule:
  11. hour: 2
  12. ##### Twice a day between 2AM and 7AM: scan existing files, fill queue, check the feeds for latest episodes, discover missing episodes.
  13. - tasks: ['purge-*', 'populate-*', 'fill-*', '*-manual', '*-rss', '*-discover']
  14. schedule:
  15. hour: '2-7/2'
  16. ##### Weekly cleanup of Transmission, Trakt TVshows list (fully watched && ended = delete from list) and harddrive.
  17. - tasks: ['clean-*']
  18. interval:
  19. weeks: 1
  20.  
  21.  
  22. templates:
  23.  
  24. ##### Series config# Please uncomment `tracking: backfill` if you need Flexget to download as much as old episodes as it can find. Do the same in series-discover-episodes and series-discover-seasons tasks
  25. series:
  26. thetvdb_lookup: yes
  27. tvmaze_lookup: yes
  28. configure_series:
  29. from:
  30. entry_list: trakt-series
  31. settings:
  32. identified_by: ep
  33. timeframe: 1 hours
  34. target: webrip+ 720p !10bit h265
  35. quality: webrip+ <=1080p !10bit xvid+
  36. propers: 48 hours
  37. specials: no
  38. season_packs: 3
  39. # tracking: backfill
  40. content_size:
  41. min: 100
  42. content_filter:
  43. require:
  44. - '*.mkv'
  45. - '*.mp4'
  46.  
  47.  
  48. ##### Movies config#
  49. movies-HQ:
  50. tmdb_lookup: yes
  51. movie_list: trakt-movies
  52. quality: 1080p webdl+ !10bit !h265
  53. content_size:
  54. min: 8000
  55. max: 25000
  56.  
  57. movies-NQ:
  58. tmdb_lookup: yes
  59. movie_list: trakt-movies
  60. quality: 1080p webdl+ !10bit !h265
  61. content_size:
  62. min: 2000
  63. max: 7999
  64.  
  65. movies-LQ:
  66. tmdb_lookup: yes
  67. movie_list: trakt-movies
  68. quality: 720p webdl+ !10bit !h265
  69. content_size:
  70. min: 900
  71. max: 8000
  72.  
  73. ##### Transmission config#
  74. transmission-anchors:
  75. _transmission-settings: &transmission-settings
  76. host: "{? transmission.host ?}"
  77. port: 9091
  78. username: "{? transmission.user ?}"
  79. password: "{? transmission.pass ?}"
  80.  
  81. ##### Common rejections#
  82. reject:
  83. regexp:
  84. reject:
  85. - \b(s|d)ub(s|bed|lado|titulado)?\b
  86. - \bhc\b
  87. - \bdual\b
  88. - \b3d\b
  89. - \bfre(nch)?\b
  90. - \bita(lian)?\b
  91. - \bspa(nish)?\b
  92. - \bger(man)?\b
  93. - \bcastellano\b
  94. - \brus(sian)?\b
  95. - \btamil\b
  96. - \bhindi\b
  97. content_filter:
  98. reject:
  99. - '*.rar'
  100. - '*.zip'
  101.  
  102.  
  103. ##### ADVANCED SETTINGS #####
  104. ##### Global config#
  105. global:
  106. no_entries_ok: yes
  107. pathscrub: windows
  108. free_space:
  109. path: "/{? folder.root ?}"
  110. space: 5000
  111. # Requires log_filter plugin
  112. log_filter:
  113. task:
  114. - marked seen
  115. - because quality already downloaded
  116. - because episode has already been downloaded
  117. - Task does not have any
  118. move:
  119. - left because it exceeds safety value
  120. - does not exists (anymore)
  121. urlrewriter:
  122. - URL rewritten to
  123. enzyme.mkv:
  124. - Reading
  125. - Processing
  126. enzyme.parsers.ebml.core:
  127. - ignored
  128. - Maximum level
  129. subliminal.video:
  130. - Scanning video
  131. parser_internal:
  132. - appears to be an episode pack
  133. content_size:
  134. - rejecting
  135. search_rss:
  136. - Error
  137. assume_quality:
  138. - ""
  139. utils.requests:
  140. - Waiting
  141.  
  142. ##### Common torrents config#
  143. torrents:
  144. torrent_alive:
  145. min_seeds: 3
  146. reject_for: 15 minutes
  147. magnets: no
  148. # Might need to disable if you are getting errors connecting to https sources
  149. # Can remove if you upgrade to python 2.7.9+ or install requests[security]
  150. verify_ssl_certificates: no
  151. domain_delay:
  152. thepiratebay.se: 10 seconds
  153. thepiratebay.org: 10 seconds
  154. limetorrents: 3 seconds
  155. anidex.info: 3 seconds
  156. bt-chat.com: 1 seconds
  157. ezrss.it: 1 seconds
  158. showrss.info: 2 seconds
  159. torlock.eu: 1 seconds
  160. torrenticity.com: 1 seconds
  161. zooqle.com: 2 seconds
  162. urlrewrite:
  163. torrentz2:
  164. regexp: 'http://torrentz2.eu/(?P<id>\w*)'
  165. format: 'magnet:?xt=urn:btih:\g<id>&dn=&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce'
  166.  
  167.  
  168. ##### Transmission series config#
  169. transmission-series:
  170. transmission:
  171. <<: *transmission-settings
  172. main_file_only: yes
  173. include_subs: yes
  174. rename_like_files: yes
  175. content_filename: "{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}} - {{series_id}}{% if tvdb_ep_name|default(False) %} - {{tvdb_ep_name|pathscrub}}{% endif %}{% if quality|default(False) %} - [{{quality}}]{% endif %}"
  176. path: "/{? folder.root ?}{? folder.downseries ?}{{tvdb_series_name|default(series_name)|pathscrub}}/"
  177.  
  178. ##### Transmission movies config#
  179. transmission-movies:
  180. transmission:
  181. <<: *transmission-settings
  182. main_file_only: yes
  183. include_subs: yes
  184. rename_like_files: yes
  185. content_filename: "{{tmdb_name|pathscrub}} ({{tmdb_year}}){% if quality|default(False) %} - [{{quality}}]{% endif %}{% if release_group|default(False) %} - [{{release_group}}]{% endif %}"
  186. path: "/{? folder.root ?}{? folder.downmovies ?}{{movie_name|pathscrub}}"
  187.  
  188. ##### Pushbullet config#
  189. # pushbullet:
  190. # notify:
  191. # entries:
  192. # title: "[flexget] {{task}}"
  193. # message: "{{title}}"
  194. # via:
  195. # - pushbullet:
  196. # api_key: "{? pushbullet.api ?}"
  197.  
  198. ##### Disable builtins for some tasks#
  199. disable-seen-retry:
  200. disable:
  201. - seen
  202. - seen_info_hash
  203. - retry_failed
  204.  
  205. ##### Series metainfo mainly for move and update tasks#
  206. series-metainfo:
  207. metainfo_series: yes
  208. thetvdb_lookup: yes
  209.  
  210. ##### Guessit parsing for some series tasks, not applied to all tasks because it causes issues with "name (year)" based series, like scandal#
  211. series-guessit:
  212. parsing:
  213. series: guessit
  214.  
  215. ##### Movies metainfo mainly for move and update tasks#
  216. movies-metainfo:
  217. tmdb_lookup: yes
  218. parsing:
  219. movie: guessit
  220. metainfo_movie: yes
  221.  
  222.  
  223. ##### Move template, only necessary if you rename files AFTER they are downloaded.
  224. # move-series:
  225. # move:
  226. # to: "/{? folder.root ?}{? folder.series ?}{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}}/S{{series_season|pad(2)}}/"
  227. # rename: "{{tvdb_series_name|default(series_name)}} - {{tvdb_ep_id|default(series_id)}}{% if tvdb_ep_name|default(False) %} - {{tvdb_ep_name|pathscrub}}{% endif %}{% if quality|default(False) %} - [{{quality}}]{% endif %}"
  228. # along:
  229. # extensions:
  230. # - srt
  231. # - sub
  232. # subdirs:
  233. # - Subs
  234. # clean_source: 50
  235. # kodi_library:
  236. # action: scan
  237. # category: video
  238. # url: http://localhost
  239. # port: 8080
  240. # list_add:
  241. # - subtitle_list:
  242. # list: subtitles
  243. # path: "{{location}}"
  244. # remove_after: 7 days
  245.  
  246.  
  247. tasks:
  248. ########## SERIES ##########
  249. # SYNC WITH TRAKT
  250. ##### First run only (use ~/flexget/bin/flexget execute --now) Sync Flexget database with watched status in Trakt#
  251. get-series-nextep:
  252. priority: 2
  253. template:
  254. - disable-seen-retry
  255. - series-metainfo
  256. list_clear:
  257. what:
  258. - entry_list: trakt-series-begin
  259. next_trakt_episodes:
  260. account: "{? trakt.account ?}"
  261. list: "{? trakt.series ?}"
  262. context: watched
  263. position: next
  264. accept_all: yes
  265. list_add:
  266. - entry_list: trakt-series-begin
  267.  
  268. set-series-nextep:
  269. priority: 3
  270. template:
  271. - disable-seen-retry
  272. - series-metainfo
  273. entry_list: trakt-series-begin
  274. accept_all: yes
  275. set:
  276. series_name: "{{tvdb_series_name|escape|replace('&#39;', '')}}"
  277. set_series_begin: yes
  278.  
  279. # SCAN DATABASE
  280. ##### Populates the series database with the files on the library, to avoid duplicate downloads#
  281. populate-series-db:
  282. priority: 4
  283. template:
  284. - series-metainfo
  285. seen: local
  286. filesystem:
  287. path: "/{? folder.root ?}{? folder.series ?}"
  288. recursive: yes
  289. retrieve: files
  290. regexp: '.*\.(avi|mkv|mp4)$'
  291. accept_all: yes
  292. configure_series:
  293. from:
  294. filesystem:
  295. path: "/{? folder.root ?}{? folder.series ?}"
  296. retrieve: dirs
  297. settings:
  298. tracking: no
  299. identified_by: ep
  300.  
  301. ##### Fetch, format and output trakt series list to a custom entry list#
  302. fill-series-list:
  303. priority: 5
  304. template:
  305. - disable-seen-retry
  306. - series-metainfo
  307. list_clear:
  308. what:
  309. - entry_list: trakt-series
  310. trakt_list:
  311. account: "{? trakt.account ?}"
  312. list: "{? trakt.series ?}"
  313. type: shows
  314. accept_all: yes
  315. set:
  316. title: "{{tvdb_series_name|escape|replace('&#39;', '')}}"
  317. list_add:
  318. - entry_list: trakt-series
  319.  
  320.  
  321. # GET SERIES
  322. ##### Download episodes from manually downloaded torrents#
  323. download-series-manual:
  324. priority: 6
  325. template:
  326. - disable-seen-retry
  327. - series-metainfo
  328. - series-guessit
  329. - transmission-series
  330. filesystem:
  331. path: "/{? folder.root ?}{? folder.downseries ?}"
  332. mask: '*.torrent'
  333. accept_all: yes
  334. exec:
  335. on_output:
  336. for_accepted: rm -f "{{location}}"
  337.  
  338.  
  339. ##### Download episodes from RSS feeds#
  340. download-series-rss:
  341. priority: 7
  342. template:
  343. - series
  344. - reject
  345. - torrents
  346. - transmission-series
  347. inputs:
  348. - rss: http://showrss.info/user/USERID.rss?magnets=true&namespaces=true&name=null&quality=anyhd&re=yes
  349. - rss: https://eztv.ag/ezrss.xml
  350. - rss: https://rarbg.to/rssdd.php?category=1;18;41;49
  351. - rss:
  352. url: https://zooqle.com/search?q=%2A+category%3ATV&fmt=rss
  353. title: 'torrent:fileName'
  354. - rss: https://www.limetorrents.cc/rss/20/
  355.  
  356.  
  357.  
  358. ##### Discover and download season packs# Please uncomment `backfill` if you need Flexget to download as much as old episodes as it can find. Do the same in series-discover-seasons task and series template.
  359. download-seasons-discover:
  360. priority: 8
  361. template:
  362. - series
  363. - reject
  364. - torrents
  365. - transmission-series
  366. - series-metainfo
  367. #season lookup not supported by thetvdb
  368. thetvdb_lookup: no
  369. magnets: yes
  370. convert_magnet:
  371. timeout: 120 seconds
  372. force: yes
  373. discover:
  374. release_estimations: strict
  375. interval: 15 minutes
  376. what:
  377. - next_series_seasons: yes
  378. # backfill: yes
  379. from:
  380. - piratebay:
  381. category: highres tv
  382. - limetorrents:
  383. category: tv
  384. - rarbg:
  385. category: [1, 18, 41, 49]
  386. - search_rss: https://torrentz2.eu/feed?f=\{{search_term}}
  387.  
  388.  
  389. ##### Discover and download older episodes# Please uncomment `tracking: backfill` if you need Flexget to download as much as old episodes as it can find. Do the same in series-discover-seasons task and series template.
  390. download-series-discover:
  391. priority: 9
  392. template:
  393. - series
  394. - reject
  395. - torrents
  396. - transmission-series
  397. - series-metainfo
  398. magnets: yes
  399. convert_magnet:
  400. timeout: 120 seconds
  401. force: yes
  402. discover:
  403. release_estimations: strict
  404. interval: 15 minutes
  405. what:
  406. - next_series_episodes: yes
  407. # backfill: yes
  408. from:
  409. - piratebay:
  410. category: highres tv
  411. - limetorrents:
  412. category: tv
  413. - rarbg:
  414. category: [1, 18, 41, 49]
  415. - search_rss: https://torrentz2.eu/feed?f=\{{search_term}}
  416.  
  417. ########## MOVIES ##########
  418.  
  419. ##### Remove manually downloaded movies from the movie queue and trakt list#
  420. purge-movies-queue:
  421. priority: 11
  422. template:
  423. - disable-seen-retry
  424. - movies-metainfo
  425. filesystem:
  426. path: "/{? folder.root ?}{? folder.movies ?}"
  427. recursive: yes
  428. retrieve: files
  429. regexp: '.*\.(avi|mkv|mp4)$'
  430. accept_all: yes
  431. list_remove:
  432. - movie_list: trakt-movies
  433. - trakt_list:
  434. account: "{? trakt.account ?}"
  435. list: "{? trakt.movies ?}"
  436. type: movies
  437.  
  438.  
  439. ##### Fill the movie queue with movies from trakt list#
  440. fill-movies-queue:
  441. priority: 12
  442. trakt_list:
  443. account: "{? trakt.account ?}"
  444. list: "{? trakt.movies ?}"
  445. type: movies
  446. strip_dates: yes
  447. accept_all: yes
  448. list_add:
  449. - movie_list: trakt-movies
  450.  
  451.  
  452. ##### Download movies manually downloaded torrents#
  453. download-movies-manual:
  454. priority: 13
  455. template:
  456. - disable-seen-retry
  457. - movies-metainfo
  458. - transmission-movies
  459. filesystem:
  460. path: "/{? folder.root ?}{? folder.downmovies ?}"
  461. mask: '*.torrent'
  462. accept_all: yes
  463. exec:
  464. on_output:
  465. for_accepted: rm -f "{{location}}"
  466. list_remove:
  467. - movie_list: trakt-movies
  468. - trakt_list:
  469. account: "{? trakt.account ?}"
  470. list: "{? trakt.movies ?}"
  471. type: movies
  472.  
  473.  
  474. ##### Discover and download 1080p movies with good bitrate (min. 8GB)#
  475. download-movies-HQ-discover:
  476. priority: 14
  477. template:
  478. - movies-HQ
  479. - reject
  480. - torrents
  481. - transmission-movies
  482. exists_movie:
  483. - "/{? folder.root ?}{? folder.downmovies ?}"
  484. - "/{? folder.root ?}{? folder.movies ?}"
  485. magnets: yes
  486. convert_magnet:
  487. timeout: 120 seconds
  488. force: yes
  489. seen: local
  490. discover:
  491. release_estimations: loose
  492. interval: 15 minutes
  493. what:
  494. - movie_list: trakt-movies
  495. from:
  496. - piratebay:
  497. category: highres movies
  498. - limetorrents:
  499. category: movies
  500. list_match:
  501. from:
  502. - movie_list: trakt-movies
  503. list_remove:
  504. - trakt_list:
  505. account: "{? trakt.account ?}"
  506. list: "{? trakt.movies ?}"
  507. type: movies
  508.  
  509.  
  510. ##### Discover and download NQ movies (fullHD min 2GB), if the movie is not recent#
  511. download-movies-NQ-discover:
  512. priority: 15
  513. template:
  514. - movies-NQ
  515. - reject
  516. - torrents
  517. - transmission-movies
  518. exists_movie:
  519. - "/{? folder.root ?}{? folder.downmovies ?}"
  520. - "/{? folder.root ?}{? folder.movies ?}"
  521. magnets: yes
  522. convert_magnet:
  523. timeout: 120 seconds
  524. force: yes
  525. seen: local
  526. discover:
  527. release_estimations: loose
  528. interval: 15 minutes
  529. what:
  530. - movie_list: trakt-movies
  531. from:
  532. - piratebay:
  533. category: highres movies
  534. - limetorrents:
  535. category: movies
  536. list_match:
  537. from:
  538. - movie_list: trakt-movies
  539. list_remove:
  540. - trakt_list:
  541. account: "{? trakt.account ?}"
  542. list: "{? trakt.movies ?}"
  543. type: movies
  544.  
  545.  
  546. ##### Discover and download lower quality/bitrate movies (1-8GB 720p), if the movie is not recent#
  547. download-movies-LQ-discover:
  548. priority: 16
  549. template:
  550. - movies-LQ
  551. - reject
  552. - torrents
  553. - transmission-movies
  554. exists_movie:
  555. - "/{? folder.root ?}{? folder.downmovies ?}"
  556. - "/{? folder.root ?}{? folder.movies ?}"
  557. magnets: yes
  558. convert_magnet:
  559. timeout: 120 seconds
  560. force: yes
  561. seen: local
  562. discover:
  563. release_estimations: loose
  564. interval: 15 minutes
  565. what:
  566. - movie_list: trakt-movies
  567. from:
  568. - piratebay:
  569. category: highres movies
  570. - limetorrents:
  571. category: movies
  572. list_match:
  573. from:
  574. - movie_list: trakt-movies
  575. list_remove:
  576. - trakt_list:
  577. account: "{? trakt.account ?}"
  578. list: "{? trakt.movies ?}"
  579. type: movies
  580.  
  581.  
  582. ########## SUBTITLES (attempt 1/2) ##########
  583.  
  584. ##### The first attempt to find subtitles by searching for a match before renaming files.
  585. find-subtitles-series:
  586. priority: 21
  587. template:
  588. - disable-seen-retry
  589. filesystem:
  590. path: "/{? folder.root ?}{? folder.downseries ?}"
  591. recursive: yes
  592. retrieve: files
  593. regexp: '.*\.(avi|mkv|mp4)$'
  594. accept_all: yes
  595. seen: local
  596. subliminal:
  597. languages:
  598. - eng
  599. exact_match: yes
  600. single: no
  601. providers: [opensubtitles, addic7ed, tvsubtitles, podnapisi]
  602. authentication:
  603. opensubtitles:
  604. username: "{? subtitles.user ?}"
  605. password: "{? subtitles.pass ?}"
  606. addic7ed:
  607. username: "{? subtitles.user ?}"
  608. password: "{? subtitles.pass ?}"
  609.  
  610.  
  611. ##### The first attempt to find subtitles by searching for a match before renaming files.
  612. find-subtitles-movies:
  613. priority: 22
  614. template:
  615. - disable-seen-retry
  616. filesystem:
  617. path: "/{? folder.root ?}{? folder.downmovies ?}"
  618. recursive: yes
  619. retrieve: files
  620. regexp: '.*\.(avi|mkv|mp4)$'
  621. accept_all: yes
  622. seen: local
  623. subliminal:
  624. languages:
  625. - eng
  626. exact_match: yes
  627. single: no
  628. providers: [opensubtitles, addic7ed, tvsubtitles, podnapisi]
  629. authentication:
  630. opensubtitles:
  631. username: "{? subtitles.user ?}"
  632. password: "{? subtitles.pass ?}"
  633. addic7ed:
  634. username: "{? subtitles.user ?}"
  635. password: "{? subtitles.pass ?}"
  636.  
  637.  
  638. ########## LIBRARY ##########
  639. move-series:
  640. priority: 31
  641. template:
  642. - disable-seen-retry
  643. - series-metainfo
  644. - series-guessit
  645. filesystem:
  646. path: "/{? folder.root ?}{? folder.downseries ?}"
  647. recursive: yes
  648. retrieve: files
  649. regexp: '.*\.(avi|mkv|mp4)$'
  650. accept_all: yes
  651. move:
  652. to: "/{? folder.root ?}{? folder.series ?}{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}}/S{{series_season|pad(2)}}/"
  653. rename: "{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}} - {{series_id}}{% if tvdb_ep_name|default(False) %} - {{tvdb_ep_name|pathscrub}}{% endif %}{% if quality|default(False) %} - [{{quality}}]{% endif %}"
  654. along:
  655. extensions:
  656. - srt
  657. - sub
  658. subdirs:
  659. - Subs
  660. clean_source: 50
  661. kodi_library:
  662. action: scan
  663. category: video
  664. url: http://192.168.1.1
  665. port: 8080
  666. list_add:
  667. - subtitle_list:
  668. list: subtitles
  669. path: "{{location}}"
  670. remove_after: 7 days
  671. exec:
  672. on_exit:
  673. phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  674.  
  675.  
  676.  
  677. ##### First add the downloaded series a list, this allows us to solve issues with files that have incorrect filenames.
  678. # move-series-list:
  679. # priority: 32
  680. # template:
  681. # - disable-seen-retry
  682. # - series-metainfo
  683. # list_clear:
  684. # what:
  685. # - entry_list: downloaded-series
  686. # filesystem:
  687. # path: "/{? folder.root ?}{? folder.downseries ?}"
  688. # recursive: yes
  689. # retrieve: files
  690. # regexp: '.*\.(avi|mkv|mp4)$'
  691. # accept_all: yes
  692. # list_add:
  693. # - entry_list: downloaded-series
  694.  
  695.  
  696. ##### Now move series from downloads folder to respective folders, along with existing subtitles and adding the files to the subtitle queue
  697. # move-series-SxxEyy:
  698. # priority: 33
  699. # template:
  700. # - disable-seen-retry
  701. # - series-metainfo
  702. # - move-series
  703. # entry_list: downloaded-series
  704. # accept_all: yes
  705. # require_field: tvdb_series_name
  706. # exec:
  707. # on_exit:
  708. # phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  709.  
  710.  
  711. ##### Fix the leftovers: Move series with incoreect epid numbering were rejected by the move-series task due to incorrect filename (SSEE instead of SxxEyy).
  712. # move-series-SSEE:
  713. # priority: 34
  714. # template:
  715. # - disable-seen-retry
  716. # - series-metainfo
  717. # - move-series
  718. # entry_list: downloaded-series
  719. # accept_all: yes
  720. # manipulate:
  721. # - title:
  722. # replace:
  723. # regexp: '([01]\d)([0-2]\d)'
  724. # format: 'S\1E\2'
  725. # - filename:
  726. # from: title
  727. # require_field: tvdb_series_name
  728. # exec:
  729. # on_exit:
  730. # phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  731.  
  732.  
  733. ##### Fix the leftovers: downloaded series that were rejected by the move-series task due to incorrect filename (SEE instead of SxxEyy), will get a title fix and should get moved on next run.
  734. # move-series-SEE:
  735. # priority: 35
  736. # template:
  737. # - disable-seen-retry
  738. # - series-metainfo
  739. # - move-series
  740. # entry_list: downloaded-series
  741. # accept_all: yes
  742. # manipulate:
  743. # - title:
  744. # replace:
  745. # regexp: '([1-9])([0-2]\d)'
  746. # format: 'S\1E\2'
  747. # - filename:
  748. # from: title
  749. # require_field: tvdb_series_name
  750. # exec:
  751. # on_exit:
  752. # phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  753.  
  754.  
  755. ##### Move movies from downloads folder to the movies folder, along with possible subtitles and adding the files to the subtitle queue#
  756. move-movies:
  757. priority: 36
  758. template:
  759. - disable-seen-retry
  760. - movies-metainfo
  761. require_field: tmdb_name
  762. filesystem:
  763. path: "/{? folder.root ?}{? folder.downmovies ?}"
  764. recursive: yes
  765. retrieve: files
  766. regexp: '.*\.(avi|mkv|mp4)$'
  767. accept_all: yes
  768. regexp:
  769. reject:
  770. - \btrailer\b
  771. - \bsample\b
  772. move:
  773. to: "/{? folder.root ?}{? folder.movies ?}"
  774. rename: "{{tmdb_name|pathscrub}} ({{tmdb_year}}){% if quality|default(False) %} - [{{quality}}]{% endif %}{% if release_group|default(False) %} - [{{release_group}}]{% endif %}"
  775. along:
  776. extensions:
  777. - srt
  778. - sub
  779. subdirs:
  780. - Subs
  781. clean_source: 100
  782. kodi_library:
  783. action: scan
  784. category: video
  785. url: http://192.168.1.1
  786. port: 8080
  787. list_add:
  788. - subtitle_list:
  789. list: subtitles
  790. path: "{{location}}"
  791. remove_after: 7 days
  792. exec:
  793. on_exit:
  794. phase: find "/{? folder.root ?}{? folder.downmovies ?}"* -type d -empty -delete
  795.  
  796.  
  797. ########## SUBTITLES (attempt 2/2) ##########
  798.  
  799. ##### Download subtitles for the previously queued files#
  800. get-subtitles:
  801. priority: 40
  802. template:
  803. - disable-seen-retry
  804. subtitle_list:
  805. list: subtitles
  806. recursion_depth: 3
  807. list_match:
  808. from:
  809. - subtitle_list:
  810. list: subtitles
  811. subliminal:
  812. languages:
  813. - eng
  814. exact_match: yes
  815. single: no
  816. providers: [opensubtitles, addic7ed, tvsubtitles, podnapisi]
  817. authentication:
  818. opensubtitles:
  819. username: "{? subtitles.user ?}"
  820. password: "{? subtitles.pass ?}"
  821. addic7ed:
  822. username: "{? subtitles.user ?}"
  823. password: "{? subtitles.pass ?}"
  824.  
  825.  
  826. ########## CLEANUP ##########
  827.  
  828. clean-transmission:
  829. priority: 51
  830. disable: details
  831. clean_transmission:
  832. <<: *transmission-settings
  833. finished_for: 1 day
  834.  
  835. ##### Remove ended or canceled series that have been watched from trakt list#
  836. clean-series-list:
  837. priority: 52
  838. template:
  839. - disable-seen-retry
  840. - series-metainfo
  841. trakt_lookup:
  842. account: "{? trakt.account ?}"
  843. username: "{? trakt.account ?}"
  844. trakt_list:
  845. account: "{? trakt.account ?}"
  846. list: "{? trakt.series ?}"
  847. type: shows
  848. if:
  849. - "tvdb_status == 'Ended' and trakt_watched": accept
  850. list_remove:
  851. - trakt_list:
  852. account: "{? trakt.account ?}"
  853. list: "{? trakt.series ?}"
  854. type: shows
  855.  
  856. ##### Remove watched seasons from drive#
  857. clean-old-seasons:
  858. priority: 53
  859. template:
  860. - disable-seen-retry
  861. - series-metainfo
  862. entry_list: trakt-series-begin
  863. accept_all: yes
  864. if:
  865. - series_season == 1 or series_episode == 1: reject
  866. - series_season > 1:
  867. set:
  868. to_remove: "S{{(series_season-1)|pad(2)}}"
  869. exec:
  870. on_output:
  871. for_accepted: find "/{? folder.root ?}{? folder.series ?}{{tvdb_series_name|escape|replace('&#39;', '')}}" -type d -name "{{to_remove}}" -exec rm -r '{}' \;
  872. kodi_library:
  873. action: clean
  874. category: video
  875. url: http://192.168.1.1
  876. port: 8080
Add Comment
Please, Sign In to add comment