Пример #1
0
def add_data(request):
    conn = sqlite3.connect('movies.db')
    cursor = conn.execute("SELECT * from mytable")
    for row in cursor:
        m = Movie(name=row[7], rating=row[19])
        if row[21] != None:
            m.cast = row[21]
        else:
            m.cast = 'None'
        id = None
        if row[23] != None:
            if Director.objects.filter(name=row[23]).exists():
                id = Director.objects.filter(name=row[23]).first().id
            else:
                d = Director(name=row[23])
                d.save()
                id = d.id
            m.director = d
        else:
            if not Director.objects.filter(name='None').exists():
                Director(name='None').save()
            d = Director.objects.filter(name='None').first()
            m.director = d

        genre = None
        try:
            genre = row[2].split()
            for g in genre:
                if Genre.objects.filter(genre=g).exists():
                    gen = Genre.objects.filter(genre=g).first()
                    m.genre.add(gen)
                else:
                    gen = Genre(genre=g)
                    gen.save()
                    m.genre.add(gen)
        except:
            pass
        m.description = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam sed ligula libero. Maecenas ut semper mi. Duis ut tempus urna, sit amet condimentum dolor. Donec sollicitudin lacus ut placerat vestibulum. Nam eu neque ut tellus feugiat cursus non a eros. Fusce gravida nisl ac diam iaculis dignissim. Quisque eleifend tristique enim, semper facilisis nisi rhoncus in. Ut at velit dolor. Etiam placerat est sed sollicitudin pulvinar. Phasellus consectetur arcu et massa porttitor convallis. In posuere a ex sed mattis. Donec vitae dui cursus, tristique nibh a, fringilla dui. Nam ornare in ante nec ornare.'
        m.save()
        print(m.name)
    return JsonResponse({})
Пример #2
0
 def handle(self, *args, **options):
     if Movie.objects.exists():
         print('Movie data already loaded...exiting.')
         print(ALREADY_LOADED_ERROR_MESSAGE)
         return
     print("Creating movie data")
     for row in DictReader(open('./movies.csv')):
         movie = Movie()
         movie.title = row['Title']
         #movie.movie_poster_image = models.ImageField(blank=True, null=True,
         #upload_to="posters/")
         movie.release_date = row['Release_date']
         movie.director = row['Director']
         movie.rating = row['Rating']
         movie.genre = row['Genre']
         movie.description = row['Description']
         movie.save()
Пример #3
0
def scrape_data(request):
    url_to_scrap = request.GET.get('url', '')
    data = scrape(url_to_scrap)
    for index in range(0, len(data)):
        scraped_movie = data[index]
        try:
            movie_obj = Movie.objects.get(name=scraped_movie['name'])
            movie_obj.updated = datetime.now()
            if movie_obj.image != scraped_movie['image']:
                movie_obj.image = scraped_movie['image']
            movie_obj.save()

        except Movie.DoesNotExist:
            movie = Movie()
            movie.name = scraped_movie['name']
            movie.image = scraped_movie['image']
            movie.year_of_release = scraped_movie['year_of_release']
            movie.director = scraped_movie['director']
            movie.save()

    return JsonResponse({'detail': 'Scraping completed successfully'},
                        status=201)