[tv/vignettes/vignettes.py] On utilise des Exception
darcs-hash:20090304095016-8fbb1-026c014c25ca20407b5dbbadb44435a3a3d52622.gz
This commit is contained in:
parent
3ec374e3bc
commit
d7caa59a30
1 changed files with 47 additions and 40 deletions
|
@ -77,17 +77,29 @@ def vignettes() :
|
||||||
nom = line.split(':')[0]
|
nom = line.split(':')[0]
|
||||||
ip = line.split(':')[-1]
|
ip = line.split(':')[-1]
|
||||||
print '%s %s' %(str(ip),str(nom))
|
print '%s %s' %(str(ip),str(nom))
|
||||||
fqdn = socket.gethostbyaddr(ip)[0]
|
try :
|
||||||
|
fqdn = socket.gethostbyaddr(ip)[0]
|
||||||
|
except gai.error, err :
|
||||||
|
print 'On n\'arrive pas à résoudre ce nom %s %s' % (ip,err[1])
|
||||||
|
continue
|
||||||
|
except :
|
||||||
|
print 'Erreur inconnue'
|
||||||
|
continue
|
||||||
|
else :
|
||||||
#on évite les radios, peu de debit et pas de vignettes
|
#on évite les radios, peu de debit et pas de vignettes
|
||||||
if nom[0:3]=='rad' :
|
if nom[0:3]=='rad' :
|
||||||
#C'est une radio on cherche un logo
|
#C'est une radio on cherche un logo
|
||||||
ok=0 #désolé vince j'ai essayé les exceptions mois c pas si simple
|
|
||||||
nom_court=(' '.join(nom.split(' ')[2:])).lower()
|
nom_court=(' '.join(nom.split(' ')[2:])).lower()
|
||||||
print "On s'occupe de la radio %s" % nom_court
|
print "On s'occupe de la radio %s" % nom_court
|
||||||
for file in os.listdir('%s /logos_radios' % img_dir):
|
for file in os.listdir('%s /logos_radios' % img_dir):
|
||||||
if file.startswith(nom_court):
|
try :
|
||||||
shutil.copy(' %s/logos_radios/%s' % (img_dir,file),'%s/%s.jpg' % (img_dir,fqdn))
|
shutil.copy(' %s/logos_radios/%s' % (img_dir,file),'%s/%s.jpg' % (img_dir,fqdn))
|
||||||
shutil.copy(' %s/logos_radios/%s' % (img_dir,file),'%s/%s_petites.jpg' % (img_dir,fqdn))
|
shutil.copy(' %s/logos_radios/%s' % (img_dir,file),'%s/%s_petites.jpg' % (img_dir,fqdn))
|
||||||
|
except :
|
||||||
|
#il n'y a pas de logo :-(
|
||||||
|
chaines_probleamatiques.append('<b><u>Chaine :</u></b> %s<br><b><u>IP :</u></b> %s:1234<br><br>\n' %(nom,ip))
|
||||||
|
continue
|
||||||
|
else :
|
||||||
if col == 2 :
|
if col == 2 :
|
||||||
col = 1
|
col = 1
|
||||||
html.write('</tr><tr>\n')
|
html.write('</tr><tr>\n')
|
||||||
|
@ -99,36 +111,30 @@ def vignettes() :
|
||||||
else :
|
else :
|
||||||
col_petites += 1
|
col_petites += 1
|
||||||
ajoute_image(nom,fqdn,ip,html,html_petites)
|
ajoute_image(nom,fqdn,ip,html,html_petites)
|
||||||
ok=1 #désolé vince j'ai essayé les exceptions mois c pas si simple
|
print 'on s\'occupe de %s %s' % (ip,nom)
|
||||||
if not ok:
|
print '\trecuperation du flux'
|
||||||
#il n'y a pas de logo :-(
|
|
||||||
chaines_probleamatiques.append('<b><u>Chaine :</u></b> %s<br><b><u>IP :</u></b> %s:1234<br><br>\n' %(nom,ip))
|
|
||||||
print "\t Fait"
|
|
||||||
continue
|
|
||||||
print 'on s\'occupe de %s %s' % (ip,nom)
|
|
||||||
print '\trecuperation du flux'
|
|
||||||
#ip port duree
|
#ip port duree
|
||||||
os.system('/usr/scripts/tv/dumpudp %s 1234 2 > %s/%s.ts 2>/dev/null' % (ip,tmp_dir,ip))
|
os.system('/usr/scripts/tv/dumpudp %s 1234 2 > %s/%s.ts 2>/dev/null' % (ip,tmp_dir,ip))
|
||||||
os.system('ffmpeg -deinterlace -an -i %s/%s.ts -s 400x300 -r 1 -t 00:00:01 -f image2 %s/%s.jpg 1>/dev/null 2>/dev/null' % (tmp_dir,ip,img_dir,fqdn))
|
|
||||||
if not os.path.exists('%s/%s.jpg' % (img_dir,fqdn)) or not os.stat('%s/%s.jpg' % (img_dir,fqdn))[6] :
|
|
||||||
print '\tOn retente'
|
|
||||||
os.system('/usr/scripts/tv/dumpudp %s 1234 2 > %s/%s.ts ' % (ip,tmp_dir,ip))
|
|
||||||
os.system('ffmpeg -deinterlace -an -i %s/%s.ts -s 400x300 -r 1 -t 00:00:01 -f image2 %s/%s.jpg 1>/dev/null 2>/dev/null' % (tmp_dir,ip,img_dir,fqdn))
|
os.system('ffmpeg -deinterlace -an -i %s/%s.ts -s 400x300 -r 1 -t 00:00:01 -f image2 %s/%s.jpg 1>/dev/null 2>/dev/null' % (tmp_dir,ip,img_dir,fqdn))
|
||||||
if not os.path.exists('%s/%s.jpg' % (img_dir,fqdn)) or not os.stat('%s/%s.jpg' % (img_dir,fqdn))[6] :
|
if not os.path.exists('%s/%s.jpg' % (img_dir,fqdn)) or not os.stat('%s/%s.jpg' % (img_dir,fqdn))[6] :
|
||||||
shutil.copy('%s/fail.jpg' % (img_dir) , '%s/%s.jpg' % (img_dir,fqdn))
|
print '\tOn retente'
|
||||||
|
os.system('/usr/scripts/tv/dumpudp %s 1234 2 > %s/%s.ts ' % (ip,tmp_dir,ip))
|
||||||
|
os.system('ffmpeg -deinterlace -an -i %s/%s.ts -s 400x300 -r 1 -t 00:00:01 -f image2 %s/%s.jpg 1>/dev/null 2>/dev/null' % (tmp_dir,ip,img_dir,fqdn))
|
||||||
|
if not os.path.exists('%s/%s.jpg' % (img_dir,fqdn)) or not os.stat('%s/%s.jpg' % (img_dir,fqdn))[6] :
|
||||||
|
shutil.copy('%s/fail.jpg' % (img_dir) , '%s/%s.jpg' % (img_dir,fqdn))
|
||||||
|
|
||||||
if os.path.exists('%s/%s_petites.jpg' % (img_dir,fqdn)) :
|
if os.path.exists('%s/%s_petites.jpg' % (img_dir,fqdn)) :
|
||||||
os.remove('%s/%s_petites.jpg' % (img_dir,fqdn))
|
os.remove('%s/%s_petites.jpg' % (img_dir,fqdn))
|
||||||
os.system('convert -geometry \'200x150 !\' %s/%s.jpg %s/%s_petites.jpg 2>/dev/null 1>/dev/null' % (img_dir,fqdn,img_dir,fqdn))
|
os.system('convert -geometry \'200x150 !\' %s/%s.jpg %s/%s_petites.jpg 2>/dev/null 1>/dev/null' % (img_dir,fqdn,img_dir,fqdn))
|
||||||
#On met des symlink pour garder une compatibilité avec les programmes utilisant les adresses ip
|
#On met des symlink pour garder une compatibilité avec les programmes utilisant les adresses ip
|
||||||
if os.path.exists('%s/%s.jpg' % (img_dir,ip)) :
|
if os.path.exists('%s/%s.jpg' % (img_dir,ip)) :
|
||||||
os.remove('%s/%s.jpg' % (img_dir,ip))
|
os.remove('%s/%s.jpg' % (img_dir,ip))
|
||||||
if os.path.exists('%s/%s_petites.jpg' % (img_dir,ip)) :
|
if os.path.exists('%s/%s_petites.jpg' % (img_dir,ip)) :
|
||||||
os.remove('%s/%s_petites.jpg' % (img_dir,ip))
|
os.remove('%s/%s_petites.jpg' % (img_dir,ip))
|
||||||
os.symlink('%s/%s.jpg' % (img_dir,fqdn),'%s/%s.jpg' % (img_dir,ip))
|
os.symlink('%s/%s.jpg' % (img_dir,fqdn),'%s/%s.jpg' % (img_dir,ip))
|
||||||
os.symlink('%s/%s_petites.jpg' % (img_dir,fqdn),'%s/%s_petites.jpg' % (img_dir,ip))
|
os.symlink('%s/%s_petites.jpg' % (img_dir,fqdn),'%s/%s_petites.jpg' % (img_dir,ip))
|
||||||
|
|
||||||
if os.path.exists('%s/%s.ts' % (tmp_dir,ip)) and os.stat('%s/%s.ts' % (tmp_dir,ip))[6] : #on teste sur le ts car il est enleve a chaque fois
|
if os.path.exists('%s/%s.ts' % (tmp_dir,ip)) and os.stat('%s/%s.ts' % (tmp_dir,ip))[6] : #on teste sur le ts car il est enleve a chaque fois
|
||||||
if col == 2 :
|
if col == 2 :
|
||||||
col = 1
|
col = 1
|
||||||
html.write('</tr><tr>\n')
|
html.write('</tr><tr>\n')
|
||||||
|
@ -141,15 +147,15 @@ def vignettes() :
|
||||||
col_petites += 1
|
col_petites += 1
|
||||||
ajoute_image(nom,fqdn,ip,html,html_petites)
|
ajoute_image(nom,fqdn,ip,html,html_petites)
|
||||||
print "--------------- Ok %s" % ip
|
print "--------------- Ok %s" % ip
|
||||||
else :
|
else :
|
||||||
chaines_probleamatiques.append('<b><u>Chaine :</u></b> %s<br><b><u>IP :</u></b> %s:1234<br><br>\n' %(nom,ip))
|
chaines_probleamatiques.append('<b><u>Chaine :</u></b> %s<br><b><u>IP :</u></b> %s:1234<br><br>\n' %(nom,ip))
|
||||||
print "--------------- Problematique %s ..." % ip
|
print "--------------- Problematique %s ..." % ip
|
||||||
if os.path.exists('%s/%s.jpg' % (img_dir,fqdn)) :
|
if os.path.exists('%s/%s.jpg' % (img_dir,fqdn)) :
|
||||||
os.remove('%s/%s.jpg' % (img_dir,fqdn))
|
os.remove('%s/%s.jpg' % (img_dir,fqdn))
|
||||||
if os.path.exists('%s/%s_petites.jpg' % (img_dir,fqdn)) :
|
if os.path.exists('%s/%s_petites.jpg' % (img_dir,fqdn)) :
|
||||||
os.remove('%s/%s_petites.jpg' % (img_dir,fqdn))
|
os.remove('%s/%s_petites.jpg' % (img_dir,fqdn))
|
||||||
|
|
||||||
if os.path.exists('%s/%s.ts' % (tmp_dir,ip)) :
|
if os.path.exists('%s/%s.ts' % (tmp_dir,ip)) :
|
||||||
os.remove('%s/%s.ts' % (tmp_dir,ip))
|
os.remove('%s/%s.ts' % (tmp_dir,ip))
|
||||||
|
|
||||||
html.write(table_piedpage)
|
html.write(table_piedpage)
|
||||||
|
@ -158,8 +164,9 @@ def vignettes() :
|
||||||
html.write('<br><u><b><h3>Liste des chaines diffusées mais dont le flux est érroné ou uniquement audio (les flux videos ne seront probablement non lisibles avec VLC mais lisibles avec xine)</h3></b></u><br>')
|
html.write('<br><u><b><h3>Liste des chaines diffusées mais dont le flux est érroné ou uniquement audio (les flux videos ne seront probablement non lisibles avec VLC mais lisibles avec xine)</h3></b></u><br>')
|
||||||
html_petites.write('<br><u><b><h3>Liste des chaines diffusées mais dont le flux est érroné ou uniquement audio (les flux videos ne seront probablement non lisibles avec VLC mais lisibles avec xine)</h3></b></u><br>')
|
html_petites.write('<br><u><b><h3>Liste des chaines diffusées mais dont le flux est érroné ou uniquement audio (les flux videos ne seront probablement non lisibles avec VLC mais lisibles avec xine)</h3></b></u><br>')
|
||||||
for line in chaines_probleamatiques :
|
for line in chaines_probleamatiques :
|
||||||
html.write(line)
|
html.write(line)
|
||||||
html_petites.write(line)
|
html_petites.write(line)
|
||||||
|
|
||||||
#on ecrit la vraie fin
|
#on ecrit la vraie fin
|
||||||
html.write(trame_piedpage)
|
html.write(trame_piedpage)
|
||||||
html.close()
|
html.close()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue