ThePornDatabase / namer

Renames adult video files so that the plex/jellyfin plugins and stash script will match without user input. Runs server or command mode.
https://theporndb.net
171 stars 26 forks source link

program adding more \ on a network attached drive #213

Closed HighKingPhoenix closed 11 months ago

HighKingPhoenix commented 11 months ago
PS C:\Users\Phoenix> python -m namer watchdog
2023-10-02 19:16:21 | ℹ️ INFO     | Namer Config:
  porndb_token: ****************************************
  inplace_name: {full_site} - {date} - {name} [WEBDL-{resolution}].{ext}
  prefer_dir_name_if_available: True
  target_extensions: ['mp4', 'mkv', 'avi', 'mov', 'flv']
  write_namer_log: False
  write_namer_failed_log: True
  trailer_location:
  sites_with_no_date_info: []
  movie_data_preferred: ['missax']
  vr_studios: ['18 vr', 'babe vr', 'badoink vr', 'dorm room', 'kink vr', 'real vr', 'realjamvr', 'sex like real', 'sexbabesvr', 'sinsvr', 'slr originals', 'swallowbay', 'virtual taboo', 'virtualrealporn', 'vr bangers', 'vr cosplay x', 'vr hush', 'vrconk', 'vredging', 'wankz vr']
  vr_tags: ['virtual reality', 'vr porn']
  site_abbreviations: {'^18og[ .-]+': '18OnlyGirls ', '^18yo[ .-]+': '18YearsOld ', '^1kf[ .-]+': '1000Facials ', '^21ea[ .-]+': '21EroticAnal ', '^21fa[ .-]+': '21FootArt ', '^21n[ .-]+': '21Naturals ', '^2cst[ .-]+': '2ChicksSameTime ', '^Infr[ .-]+': 'InfernalRestraints ', '^a1o1[ .-]+': 'Asian1on1 ', '^aa[ .-]+': 'AmateurAllure ', '^abbw[ .-]+': 'AbbyWinters ', '^abme[ .-]+': 'AbuseMe ', '^ad[ .-]+': 'AmericanDaydreams ', '^add[ .-]+': 'ManualAddActors ', '^agm[ .-]+': 'AllGirlMassage ', '^aktp[ .-]+': 'ATKPetites ', '^am[ .-]+': 'AssMasterpiece ', '^ana[ .-]+': 'AnalAngels ', '^analb[ .-]+': 'AnalBeauty ', '^atke[ .-]+': 'ATKExotics ', '^atkg[ .-]+': 'ATKGalleria ', '^atkgfs[ .-]+': 'ATKGirlfriends ', '^atkh[ .-]+': 'ATKHairy ', '^ba[ .-]+': 'BeautyAngels ', '^bam[ .-]+': 'BruceAndMorgan ', '^bblib[ .-]+': 'BigButtsLikeItBig ', '^bcast[ .-]+': 'BrutalCastings ', '^bcasting[ .-]+': 'BangCasting ', '^bcb[ .-]+': 'BigCockBully ', '^bch[ .-]+': 'BigCockHero ', '^bconfessions[ .-]+': 'BangConfessions ', '^bd[ .-]+': 'BrutalDildos ', '^bdpov[ .-]+': 'BadDaddyPOV ', '^bex[ .-]+': 'BrazzersExxtra ', '^bgb[ .-]+': 'BabyGotBoobs ', '^bgbs[ .-]+': 'BoundGangbangs ', '^bgfs[ .-]+': 'BlackGFS ', '^bglamkore[ .-]+': 'BangGlamkore ', '^bgonzo[ .-]+': 'BangGonzo ', '^bin[ .-]+': 'BigNaturals ', '^bjf[ .-]+': 'BlowjobFridays ', '^bna[ .-]+': 'BrandNew ', '^bp[ .-]+': 'ButtPlays ', '^bpu[ .-]+': 'BrutalPickups ', '^brealmilfs[ .-]+': 'BangRealMilfs ', '^brealteens[ .-]+': 'BangRealTeens ', '^btas[ .-]+': 'BigTitsAtSchool ', '^btaw[ .-]+': 'BigTitsAtWork ', '^btc[ .-]+': 'BigTitCreampie ', '^btis[ .-]+': 'BigTitsInSports ', '^btiu[ .-]+': 'BigTitsInUniform ', '^btlbd[ .-]+': 'BigTitsLikeBigDicks ', '^btp[ .-]+': 'BadTeensPunished ', '^btra[ .-]+': 'BigTitsRoundAsses ', '^burna[ .-]+': 'BurningAngel ', '^bwb[ .-]+': 'BigWetButts ', '^byngr[ .-]+': 'BangYNGR ', '^cc[ .-]+': 'CzechCasting ', '^cfnm[ .-]+': 'ClothedFemaleNudeMale ', '^cfnms[ .-]+': 'FNMSecret ', '^cfnmt[ .-]+': 'CFNMTeens ', '^cgfs[ .-]+': 'CzechGFS ', '^clip[ .-]+': 'LegalPorno ', '^cps[ .-]+': 'CherryPimps ', '^css[ .-]+': 'CzechStreets ', '^cuf[ .-]+': 'CumFiesta ', '^cws[ .-]+': 'CzechWifeSwap ', '^cza[ .-]+': 'CzechAmateurs ', '^czb[ .-]+': 'CzechBitch ', '^czbb[ .-]+': 'CzechBangBus ', '^czc[ .-]+': 'CzechCouples ', '^czestro[ .-]+': 'CzechEstrogenolit ', '^czf[ .-]+': 'CzechFantasy ', '^czgb[ .-]+': 'CzechGangBang ', '^czharem[ .-]+': 'CzechHarem ', '^czm[ .-]+': 'CzechMassage ', '^czo[ .-]+': 'CzechOrgasm ', '^czps[ .-]+': 'CzechPawnShop ', '^czt[ .-]+': 'CzechTwins ', '^cztaxi[ .-]+': 'CzechTaxi ', '^da[ .-]+': 'DoctorAdventures ', '^dbm[ .-]+': 'DontBreakMe ', '^dc[ .-]+': 'DorcelVision ', '^ddfb[ .-]+': 'DDFBusty ', '^ddfvr[ .-]+': 'DDFNetworkVR ', '^deb[ .-]+': 'DeviceBondage ', '^dlla[ .-]+': 'DaddysLilAngel ', '^dm[ .-]+': 'DirtyMasseur ', '^dnj[ .-]+': 'DaneJones ', '^doan[ .-]+': 'DiaryOfANanny ', '^dpf[ .-]+': 'DPFanatics ', '^dpg[ .-]+': 'DigitalPlayground ', '^ds[ .-]+': 'DungeonSex ', '^dsw[ .-]+': 'DaughterSwap ', '^dts[ .-]+': 'DeepThroatSirens ', '^dwc[ .-]+': 'DirtyWivesClub ', '^dwp[ .-]+': 'DayWithAPornstar ', '^esp[ .-]+': 'EuroSexParties ', '^ete[ .-]+': 'EuroTeenErotica ', '^ext[ .-]+': 'ExxxtraSmall ', '^fab[ .-]+': 'FuckedAndBound ', '^fams[ .-]+': 'FamilyStrokes ', '^faq[ .-]+': 'FirstAnalQuest ', '^fbbg[ .-]+': 'FirstBGG ', '^fds[ .-]+': 'FakeDrivingSchool ', '^ff[ .-]+': 'FilthyFamily ', '^ffr[ .-]+': 'FacialsForever ', '^fft[ .-]+': 'FemaleFakeTaxi ', '^fhd[ .-]+': 'FantasyHD ', '^fhl[ .-]+': 'FakeHostel ', '^fho[ .-]+': 'FakeHubOriginals ', '^fka[ .-]+': 'FakeAgent ', '^fm[ .-]+': 'FuckingMachines ', '^fms[ .-]+': 'FantasyMassage ', '^frs[ .-]+': 'FitnessRooms ', '^fs[ .-]+': 'FuckStudies ', '^ft[ .-]+': 'FastTimes ', '^ftx[ .-]+': 'FakeTaxi ', '^fum[ .-]+': 'FuckingMachines ', '^gbcp[ .-]+': 'GangbangCreampie ', '^gdp[ .-]+': 'GirlsDoPorn ', '^gfr[ .-]+': 'GFRevenge ', '^gft[ .-]+': 'GrandpasFuckTeens ', '^gta[ .-]+': 'GirlsTryAnal ', '^gw[ .-]+': 'GirlsWay ', '^h1o1[ .-]+': 'Housewife1on1 ', '^ham[ .-]+': 'HotAndMean ', '^hart[ .-]+': 'Hegre ', '^hcm[ .-]+': 'HotCrazyMess ', '^hletee[ .-]+': 'HelplessTeens ', '^hoh[ .-]+': 'HandsOnHardcore ', '^hotab[ .-]+': 'HouseOfTaboo ', '^hotb[ .-]+': 'HouseOfTaboo ', '^ht[ .-]+': 'Hogtied ', '^ihaw[ .-]+': 'IHaveAWife ', '^iktg[ .-]+': 'IKnowThatGirl ', '^il[ .-]+': 'ImmoralLive ', '^inh[ .-]+': 'InnocentHigh ', '^itc[ .-]+': 'InTheCrack ', '^jlmf[ .-]+': 'JessieLoadsMonsterFacials ', '^kha[ .-]+': 'KarupsHA ', '^kow[ .-]+': 'KarupsOW ', '^kpc[ .-]+': 'KarupsPC ', '^la[ .-]+': 'LatinAdultery ', '^lang[ .-]+': 'LANewGirl ', '^lcd[ .-]+': 'LittleCaprice ', '^lhf[ .-]+': 'LoveHerFeet ', '^lsb[ .-]+': 'Lesbea ', '^lst[ .-]+': 'LatinaSexTapes ', '^lta[ .-]+': 'LetsTryAnal ', '^maj[ .-]+': 'ManoJob ', '^mbb[ .-]+': 'MommyBlowsBest ', '^mbc[ .-]+': 'MyBabysittersClub ', '^mbt[ .-]+': 'MomsBangTeens ', '^mc[ .-]+': 'MassageCreep ', '^mcu[ .-]+': 'MonsterCurves ', '^mdhf[ .-]+': 'MyDaughtersHotFriend ', '^mdhg[ .-]+': 'MyDadsHotGirlfriend ', '^mdm[ .-]+': 'MyDirtyMaid ', '^mfa[ .-]+': 'ManuelFerrara ', '^mfhg[ .-]+': 'MyFriendsHotGirl ', '^mfhm[ .-]+': 'MyFriendsHotMom ', '^mfl[ .-]+': 'Mofos ', '^mfp[ .-]+': 'MyFamilyPies ', '^mfst[ .-]+': 'MyFirstSexTeacher ', '^mgb[ .-]+': 'MommyGotBoobs ', '^mgbf[ .-]+': 'MyGirlfriendsBustyFriend ', '^mic[ .-]+': 'MomsInControl ', '^mj[ .-]+': 'ManoJob ', '^mlib[ .-]+': 'MilfsLikeItBig ', '^mlt[ .-]+': 'MomsLickTeens ', '^mmgs[ .-]+': 'MommysGirl ', '^mmp[ .-]+': 'MMPNetwork ', '^mnm[ .-]+': 'MyNaughtyMassage ', '^mot[ .-]+': 'MoneyTalks ', '^mpov[ .-]+': 'MrPOV ', '^mrs[ .-]+': 'MassageRooms ', '^mshf[ .-]+': 'MySistersHotFriend ', '^mts[ .-]+': 'MomsTeachSex ', '^mvft[ .-]+': 'MyVeryFirstTime ', '^mwhf[ .-]+': 'MyWifesHotFriend ', '^na[ .-]+': 'NaughtyAthletics ', '^naf[ .-]+': 'NeighborAffair ', '^nam[ .-]+': 'NaughtyAmerica ', '^nb[ .-]+': 'NaughtyBookworms ', '^news[ .-]+': 'NewSensations ', '^nf[ .-]+': 'NubileFilms ', '^no[ .-]+': 'NaughtyOffice ', '^nrg[ .-]+': 'NaughtyRichGirls ', '^nubilef[ .-]+': 'NubileFilms ', '^nubp[ .-]+': 'NubilesPorn ', '^num[ .-]+': 'NuruMassage ', '^nvg[ .-]+': 'NetVideoGirls ', '^nw[ .-]+': 'NaughtyWeddings ', '^obj[ .-]+': 'OnlyBlowjob ', '^oo[ .-]+': 'OnlyOpaques ', '^os[ .-]+': 'OnlySecretaries ', '^oss[ .-]+': 'OnlySilAndSatin ', '^otb[ .-]+': 'OnlyTeenBlowjobs ', '^pav[ .-]+': 'PixAndVideo ', '^pba[ .-]+': 'PublicAgent ', '^pbf[ .-]+': 'PetiteBallerinasFucked ', '^pc[ .-]+': 'PrincessCum ', '^pdmqfo[ .-]+': 'QuestForOrgasm ', '^pf[ .-]+': 'PornFidelity ', '^phd[ .-]+': 'PassionHD ', '^phdp[ .-]+': 'PetiteHDPorn ', '^plib[ .-]+': 'PornstarsLikeItBig ', '^pop[ .-]+': 'PervsOnPatrol ', '^ppu[ .-]+': 'PublicPickups ', '^prdi[ .-]+': 'PrettyDirty ', '^ps[ .-]+': 'PropertySex ', '^psp[ .-]+': 'PornstarsPunishment ', '^psus[ .-]+': 'PascalsSubSluts ', '^pud[ .-]+': 'PublicDisgrace ', '^rab[ .-]+': 'RoundAndBrown ', '^reg[ .-]+': 'RealExGirlfriends ', '^rkp[ .-]+': 'RKPrime ', '^rtb[ .-]+': 'RealTimeBondage ', '^rws[ .-]+': 'RealWifeStories ', '^saf[ .-]+': 'ShesAFreak ', '^sart[ .-]+': 'SexArt ', '^sas[ .-]+': 'SexAndSubmission ', '^sbj[ .-]+': 'StreetBlowjobs ', '^seb[ .-]+': 'SexuallyBroken ', '^sed[ .-]+': 'SexualDisgrace ', '^sislov[ .-]+': 'SisLovesMe ', '^sislove[ .-]+': 'SisLovesMe ', '^smb[ .-]+': 'ShareMyBF ', '^sr[ .-]+': 'SadisticRope ', '^ssc[ .-]+': 'StepSiblingsCaught ', '^ssn[ .-]+': 'ShesNew ', '^steps[ .-]+': 'StepSiblings ', '^stre[ .-]+': 'StrictRestraint ', '^sts[ .-]+': 'StrandedTeens ', '^swsn[ .-]+': 'SwallowSalon ', '^t18[ .-]+': 'Taboo18 ', '^taob[ .-]+': 'TheArtOfBlowJob ', '^tdp[ .-]+': 'TeensDoPorn ', '^tds[ .-]+': 'TheDickSuckers ', '^ted[ .-]+': 'Throated ', '^tf[ .-]+': 'TeenFidelity ', '^tfcp[ .-]+': 'FullyClothedPissing ', '^tft[ .-]+': 'TeacherFucksTeens ', '^tg[ .-]+': 'TopGrl ', '^tgs[ .-]+': 'ThisGirlSucks ', '^tgw[ .-]+': 'ThaiGirlsWild ', '^th[ .-]+': 'TwistysHard ', '^these[ .-]+': 'TheStripperExperience ', '^tla[ .-]+': 'TeensLoveAnal ', '^tlc[ .-]+': 'TeensLoveCream ', '^tle[ .-]+': 'TheLifeErotic ', '^tlhc[ .-]+': 'TeensLoveHugeCocks ', '^tlib[ .-]+': 'TeensLikeItBig ', '^tlm[ .-]+': 'TeensLoveMoney ', '^tmf[ .-]+': 'TeachMeFisting ', '^tog[ .-]+': 'TonightsGirlfriend ', '^togc[ .-]+': 'TonightsGirlfriendClassic ', '^trwo[ .-]+': 'TheRealWorkout ', '^tslw[ .-]+': 'SlimeWave ', '^tsm[ .-]+': 'TeenSexMovs ', '^tsma[ .-]+': 'TeenSexMania ', '^tspa[ .-]+': 'TrickySpa ', '^tss[ .-]+': 'ThatSitcomShow ', '^tt[ .-]+': 'TryTeens ', '^tto[ .-]+': 'TheTrainingOfO ', '^ttw[ .-]+': 'TeensInTheWoods ', '^tuf[ .-]+': 'TheUpperFloor ', '^vp[ .-]+': 'VIPissy ', '^wa[ .-]+': 'WhippedAss ', '^wfbg[ .-]+': 'WeFuckBlackGirls ', '^wgp[ .-]+': 'WhenGirlsPlay ', '^wkp[ .-]+': 'Wicked ', '^wlt[ .-]+': 'WeLiveTogether ', '^woc[ .-]+': 'WildOnCam ', '^wov[ .-]+': 'WivesOnVacation ', '^wowg[ .-]+': 'WowGirls ', '^wpa[ .-]+': 'WhippedAss ', '^wrh[ .-]+': 'WeAreHairy ', '^wy[ .-]+': 'WebYoung ', '^yt[ .-]+': 'YoungThroats ', '^zb[ .-]+': 'ZoliBoy ', '^ztod[ .-]+': 'ZeroTolerance ', '^zzs[ .-]+': 'ZZseries '}
  update_permissions_ownership: True
  set_dir_permissions: 775
  set_file_permissions: 664
  set_uid: None
  set_gid: None
  max_performer_names: 6
  use_database: False
  database_path: C:\Users\Phoenix\database
  use_requests_cache: True
  requests_cache_expire_minutes: 10
  override_tpdb_address: https://api.metadataapi.net
  plex_hack: False
Phash:
  search_phash: True
  use_distant_matching: True
  send_phash: False
  use_alt_phash_tool: False
  max_ffmpeg_workers: None
  use_gpu: True
Duplicate Config:
  preserve_duplicates: True
  max_desired_resolutions: -1
  desired_codec: ['hevc', 'h264']
Tagging Config:
  write_nfo: False
  enabled_tagging: True
  enabled_poster: True
  download_type: ['poster', 'background', 'performer']
  enable_metadataapi_genres: True
  default_genre: Adult
  language: eng
  mark_collected: False
Watchdog Config:
  ignored_dir_regex: .*_UNPACK_.*
  min_file_size: 300
  del_other_files: False
  new_relative_path_name: {full_site}\{name} - {date}\{full_site} - {name}.{ext}
  watch_dir: \\192.168.1.49\Gooning\Watchdog\watch
  work_dir: \\192.168.1.49\Gooning\Watchdog\working
  failed_dir: \\192.168.1.49\Gooning\Watchdog\failed
  dest_dir: \\192.168.1.49\Gooning\Sites
  retry_time:
  extra_sleep_time: 30
  web: False
  port: 6980
  host: 192.168.1.16
  web_root:
  allow_delete_files: False
  add_max_percent_column: False
  debug: False
  manual_mode: False
  diagnose_errors: True
2023-10-02 19:16:21 | ℹ️ INFO     | ffmpeg version "2022-11-21-git-459527108a-full_build-www.gyan.dev" found
2023-10-02 19:16:21 | ℹ️ INFO     | ffprobe version "2022-11-21-git-459527108a-full_build-www.gyan.dev" found
2023-10-02 19:16:21 | ℹ️ INFO     | Start porndb scene watcher.... watching: \\192.168.1.49\Gooning\Watchdog\watch
2023-10-02 19:16:21 | ℹ️ INFO     | Moving \\192.168.1.49\Gooning\Watchdog\watch\BrattySis.23.09.01.Molly.Little.My.Stepbrothers.Fat.Cock.XXX.1080p.MP4-WRB[XC] to \\192.168.1.49\Gooning\Watchdog\working\BrattySis.23.09.01.Molly.Little.My.Stepbrothers.Fat.Cock.XXX.1080p.MP4-WRB[XC] for processing
Traceback (most recent call last):
2023-10-02 19:16:21  File "<frozen runpy>", line 198, in _run_module_as_main
 |   File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\Phoenix\AppData\Roaming\Python\Python311\site-packages\namer\__main__.py", line 87, in <module>
ℹ️ INFO     | Processing: \\192.168.1.49\Gooning\Watchdog\working\BrattySis.23.09.01.Molly.Little.My.Stepbrothers.Fat.Cock.XXX.1080p.MP4-WRB[XC]
    main()
  File "C:\Users\Phoenix\AppData\Roaming\Python\Python311\site-packages\namer\__main__.py", line 74, in main
2023-10-02 19:16:21    namer.watchdog.create_watcher(config).run()
  File "C:\Users\Phoenix\AppData\Roaming\Python\Python311\site-packages\namer\watchdog.py", line 177, in run
 | ℹ️ INFO     | Calculating phash for file "\\192.168.1.49\Gooning\Watchdog\working\BrattySis.23.09.01.Molly.Little.My.Stepbrothers.Fat.Cock.XXX.1080p.MP4-WRB[XC]\brattysis.23.09.01.molly.little.my.stepbrothers.fat.cock.mkv"
    self.start()
  File "C:\Users\Phoenix\AppData\Roaming\Python\Python311\site-packages\namer\watchdog.py", line 242, in start
    for file in self.__namer_config.watch_dir.rglob("**/*.*"):
  File "C:\Program Files\Python311\Lib\pathlib.py", line 968, in rglob
    for p in selector.select_from(self):
  File "C:\Program Files\Python311\Lib\pathlib.py", line 408, in _select_from
    for p in successor_select(starting_point, is_dir, exists, scandir):
  File "C:\Program Files\Python311\Lib\pathlib.py", line 407, in _select_from
    for starting_point in self._iterate_directories(parent_path, is_dir, scandir):
  File "C:\Program Files\Python311\Lib\pathlib.py", line 397, in _iterate_directories
    for p in self._iterate_directories(path, is_dir, scandir):
  File "C:\Program Files\Python311\Lib\pathlib.py", line 386, in _iterate_directories
    with scandir(parent_path) as scandir_it:
         ^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Python311\Lib\pathlib.py", line 938, in _scandir
    return os.scandir(self)
           ^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 3] The system cannot find the path specified: '\\\\192.168.1.49\\Gooning\\Watchdog\\watch\\BrattySis.23.09.01.Molly.Little.My.Stepbrothers.Fat.Cock.XXX.1080p.MP4-WRB[XC]'

work fine on a local disk letter but when i switch to my network letter it gives me an error it started happening when i updated the pip namer