scrapeit/scrapeit/btutils.py

78 lines
2.0 KiB
Python

# -*- Mode: Python; -*-
# -*- coding: utf-8 -*-
# vi:si:et:sw=2:sts=2:ts=2
import re
from utils import stripTags
def torrentsWeLike(link):
'''check if torrent title looks like something we want to see,
dvdrip / no cam / no dubbed versions
'''
text = stripTags(unicode(link)).lower()
#no cams / telesyncs or other stuff
for word in ('cam', 'telesync', 'telecine', '.ts', '.tc', ' tc ', ' ts', 'vcd', 'ts-screener'):
if word in text:
return False
#no dubbed versions
for word in ('italian', 'german', 'spanish', 'french', 'nl sub'):
if word in text:
return False
#not blueray or hddvd version right now or even DVDRs
for word in ('chd', 'hd ', 'hd-', 'dvdr-', 'dvdr.', 'dvdr '):
if word in text:
return False
#only dvdrips or dvdscrs
for word in ('dvdrip', 'dvdscr', 'dvd screener'):
if word in text:
return True
return False
def movieType(title):
title = title.lower()
if 'trailer' in title:
return 'trailer'
if 'vcd' in title and 'cam' in title:
return 'vcd-cam'
if 'cam' in title:
return 'cam'
if 'vcd' in title:
return 'vcd'
for key in ('telecine', '.tc', ' tc '):
if key in title:
return 'telecine'
for key in ('telesync', '.ts', ' ts', 'ts-screener'):
if key in title:
return 'telesync'
for key in ('dvdrip', 'dvdscrs', 'dvdscr', 'dvd rip', 'r5'):
if key in title:
return 'dvdrip'
for key in ('blu-ray rip', 'bdrip'):
if key in title:
return 'hdrip'
if 'screener' in title:
return 'screener'
if '1080p' in title:
return '1080p'
if '720p' in title:
return '720p'
for key in ('dvdr', 'dvd-r'):
if key in title:
return 'DVDR'
return ''
def filterMovies(movies):
m2 = []
for movie in movies:
imdb_id = re.compile('title/tt(\d{7})').findall(movie['txt'])
if imdb_id:
movie['imdb'] = imdb_id[0]
else:
movie['imdb'] = ''
movie['source_type'] = movieType(movie['title'])
m2.append(movie)
return m2