mirror of
https://github.com/bspeice/Melodia
synced 2024-12-25 08:08:13 -05:00
Optimize the filesystem scanning slightly
This commit is contained in:
parent
944593be94
commit
d4d3ad450a
@ -43,7 +43,7 @@ class Archive (models.Model):
|
||||
"Scan the archive's root filesystem and add any new songs without adding metadata, delete songs that exist no more"
|
||||
#This method is implemented since the other scan methods all need to use the same code
|
||||
#DRY FTW
|
||||
import re, os
|
||||
import re, os, itertools
|
||||
from django.core.exceptions import ObjectDoesNotExist
|
||||
from Melodia.melodia_settings import SUPPORTED_AUDIO_EXTENSIONS
|
||||
from Melodia.melodia_settings import HASH_FUNCTION as hash
|
||||
@ -60,10 +60,8 @@ class Archive (models.Model):
|
||||
|
||||
#Add new songs
|
||||
for dirname, dirnames, filenames in os.walk(self.root_folder):
|
||||
#For each filename
|
||||
for filename in filenames:
|
||||
#If the filename is a supported audio extension
|
||||
if re.match(regex, filename):
|
||||
#For each filename that is supported
|
||||
for filename in itertools.ifilter(lambda filename: re.match(regex, filename), filenames):
|
||||
#Make sure that `filename` is in the database
|
||||
try:
|
||||
rel_url = os.path.join(dirname, filename)
|
||||
|
Loading…
Reference in New Issue
Block a user