def get_genres(): # Used in reset_db() to get genres using a google search genre_list = scrape_genres( 'https://www.google.com/search?q=music+genres&rlz=1C5CHFA_enUS738US738&oq=music+' + 'genres&aqs=chrome..69i57j69i60j0l4.1688j0j7&sourceid=chrome&ie=UTF-8') for genre in genre_list: new_genre = Genre(name=genre) new_genre.save(cascade=True)
def post_create_genre(request): # Obtiene el nombre de la categoría nombre_categoria = request.POST['name'] # Crea el objeto categoría categoria = Genre(name=nombre_categoria) # Guarda el objeto en la base de datos categoria.save() # Redirecciona a la página de categorías return redirect('app:view_genres')
def AddFolder(request, pk): form = dict() form['form'] = AddFolderForm() form['note_name'] = Note.objects.all() form['directory'] = Genre.objects.get(id=pk) form['users'] = User.objects.all() form['tree'] = Genre.objects.filter(parent_id=pk) if request.POST: new_folder = Genre() new_folder.name = request.POST['name'] new_folder.user = User.objects.get(username=auth.get_user(request).username) new_folder.parent_id = pk new_folder.save() return render(request, 'app/addfolder.html', form)
def updateDBInfo(response, track): tags = Information() # Changing tags in the database if 'TITLE' in response and response['TITLE'] != '': tags.trackTitle = strip_tags(response['TITLE']).lstrip().rstrip() track.title = tags.trackTitle if 'ARTISTS' in response and response['ARTISTS'] != '': tags.trackArtist = strip_tags( response['ARTISTS']).lstrip().rstrip().split(',') artists = [] for artist in tags.trackArtist: if Artist.objects.filter(name=artist).count() == 0: newArtist = Artist() newArtist.name = artist newArtist.save() artists.append(Artist.objects.get(name=artist)) track.artist.clear() for artist in artists: track.artist.add(artist) if 'PERFORMER' in response and response['PERFORMER'] != '': tags.trackPerformer = strip_tags( response['PERFORMER']).lstrip().rstrip() track.performer = tags.trackPerformer if 'COMPOSER' in response and response['COMPOSER'] != '': tags.trackComposer = strip_tags(response['COMPOSER']).lstrip().rstrip() track.composer = tags.trackComposer if 'YEAR' in response and response['YEAR'] != '': tags.trackYear = checkIntValueError(response['YEAR']) track.year = tags.trackYear if 'TRACK_NUMBER' in response and response['TRACK_NUMBER'] != '': tags.trackNumber = checkIntValueError(response['TRACK_NUMBER']) track.number = tags.trackNumber if 'BPM' in response and response['BPM'] != '': track.bpm = checkIntValueError(response['BPM']) if 'LYRICS' in response and response['LYRICS'] != '': tags.lyrics = strip_tags(response['LYRICS']).lstrip().rstrip() track.lyrics = tags.lyrics if 'COMMENT' in response and response['COMMENT'] != '': tags.comment = strip_tags(response['COMMENT']).lstrip().rstrip() track.comment = tags.comment if 'GENRE' in response and response['GENRE'] != '': tags.trackGenre = strip_tags(response['GENRE']).lstrip().rstrip() if Genre.objects.filter(name=tags.trackGenre).count() == 0: genre = Genre() genre.name = tags.trackGenre genre.save() genre = Genre.objects.get(name=tags.trackGenre) track.genre = genre if 'COVER' in response: md5Name = hashlib.md5() if str(response['COVER'].split(",")[0]) == "image/png": extension = "png" else: extension = "jpg" md5Name.update(base64.b64decode(str(response['COVER'].split(",")[1]))) # Check if the folder exists filePath = "/ManaZeak/static/img/covers/" if not os.path.isdir(filePath): os.mkdir(filePath) # Create the folder filePath += +md5Name.hexdigest() + extension # if the filePath is the same, then the md5 hash of the image is # the same, therefore the images are the same, therefore do nothing if not os.path.isfile(filePath): with open(filePath, 'wb+') as destination: # Split the header with MIME type tags.cover = base64.b64decode( str(response['COVER'].split(",")[1])) destination.write(tags.cover) track.coverLocation = md5Name.hexdigest() + extension if 'ALBUM_TITLE' in response and 'ALBUM_ARTISTS' in response and response['ALBUM_TITLE'] != '' \ and response['ALBUM_ARTISTS'] != '': tags.albumTitle = strip_tags(response['ALBUM_TITLE']).lstrip().rstrip() tags.albumArtist = strip_tags( response['ALBUM_ARTISTS']).lstrip().rstrip().split(',') if Album.objects.filter(title=tags.albumTitle).count() == 0: album = Album() album.title = tags.albumTitle album.save() album = Album.objects.get(title=tags.albumTitle) album.artist.clear() for artist in tags.albumArtist: if Artist.objects.filter(name=artist).count() == 0: newArtist = Artist() newArtist.name = artist newArtist.save() album.artist.add(Artist.objects.get(name=artist)) if 'ALBUM_TOTAL_DISC' in response and response[ 'ALBUM_TOTAL_DISC'] != '': tags.albumTotalDisc = checkIntValueError( response['ALBUM_TOTAL_DISC']) album.totalDisc = tags.albumTotalDisc if 'DISC_NUMBER' in response and response['DISC_NUMBER'] != '': tags.albumDiscNumber = checkIntValueError(response['DISC_NUMBER']) track.discNumber = tags.albumDiscNumber if 'ALBUM_TOTAL_TRACK' in response and response[ 'ALBUM_TOTAL_TRACK'] != '': tags.albumTotalTrack = checkIntValueError( response['ALBUM_TOTAL_TRACK']) album.totalTrack = tags.albumTotalTrack album.save() track.album = album track.save() return tags
import os os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'PocketMovies.settings') import django django.setup() from app.models import Movie, Genre, Actor, Director, Producer from dataset import movies, genres, actors, directors, producers for genre in genres: new_genre = Genre(name=genre) new_genre.save() for actor in actors: new_actor = Actor(name=actor['name'], birthdate=actor['birthdate'], years_active=actor['years_active'], nationality=actor['nationality'], imageField=actor['imageField'], twitterAccount=actor['twitterAccount'], instagramAccount=actor['instagramAccount']) new_actor.save() for director in directors: new_director = Director(name=director['name'], birthdate=director['birthdate'], website=director['website'], imageField=director['imageField'], twitterAccount=director['twitterAccount'], instagramAccount=director['instagramAccount']) new_director.save()