- C'est long, très long, très très long
- on surcharge le site de Telepoche (d'où les données sont extraites)
- si on le fait plus souvent que tous les 9 jours on télécharge en partie les mêmes données
- si le grabber se plante (perte de connection, pb sur le site, pb sur la machine) on perd quasiement tout et on a un fichier non valide
Le principe est de ne grabber que les données les plus éloignées dans le temps (à 9 jours donc) et de conserver les données des jours précédents puis de réassembler le tout.
Pour cela il suffit d'utiliser les fonctions --offset et --days (facultatif mais je trouve ça plus propre ) comme ceci :
Code : Tout sélectionner
xmltv tv_grab_fr --config-file complet.conf --output part9.xml --slow --days 1 --offset 8
Code : Tout sélectionner
rem ----------------------------------- Début ----------------------------------
rem -----------------------------------------------------------------------------
rem ---- On sauvegarde les anciens fichiers dans un répertoire OLD ----
rem -----------------------------------------------------------------------------
xcopy part*.xml old /y
xcopy complet.xml old /y
rem -----------------------------------------------------------------------------
rem --------------- On copie part[J].xml en part[J-1].xml ----------------
rem -----------------------------------------------------------------------------
copy part2.xml part1.xml
copy part3.xml part2.xml
copy part4.xml part3.xml
copy part5.xml part4.xml
copy part6.xml part5.xml
copy part7.xml part6.xml
copy part8.xml part7.xml
copy part9.xml part8.xml
rem -----------------------------------------------------------------------------
rem ---------------------- On grabbe à J+9 ----------------------------------
rem -----------------------------------------------------------------------------
xmltv tv_grab_fr --config-file complet.conf --output part9.xml --slow --days 1 --offset 8
rem -----------------------------------------------------------------------------
rem ------------ On assemble les 9 fichiers en un seul ---------------------
rem -----------------------------------------------------------------------------
xmltv tv_cat --output complet.xml part1.xml part2.xml part3.xml part4.xml part5.xml part6.xml part7.xml part8.xml part9.xml
rem ------------------------------------ Fin -----------------------------------
- Le script n'est pas optimisé du tout nottament sur la copie des fichiers du début (mais je ne me suis pas pris la tête dessus pour le moment)
- Il n'y a actuellement aucune détection d'erreur pour le moment mais c'est en cours
- Il faut, la 1ere fois lancer un grabbe sur 8 jours (voir plus bas)
- Pensez à modifier le nom du fichier de configuration (dans mon cas il s'appelle "complet.conf") et éventuellement le nom du fichier de sortie ("complet.xml" pour moi)
- Avec ce script mon temps de grab se réduit à environ 40 minutes et j'ai un fichier complet avec descriptions et 116 chaines
- En cas de problème sur le grabbe je peux juste reprendre le ou les fichiers HS (comme cela a eu lieu pendant 3 jours il y a peu)
- Ce script est fait pour Windows mais il est facilement adaptable sous Linux
Code : Tout sélectionner
xmltv tv_grab_fr --config-file complet.conf --output part1.xml --slow --days 1
xmltv tv_grab_fr --config-file complet.conf --output part2.xml --slow --days 1 --offset 1
xmltv tv_grab_fr --config-file complet.conf --output part3.xml --slow --days 1 --offset 2
xmltv tv_grab_fr --config-file complet.conf --output part4.xml --slow --days 1 --offset 3
xmltv tv_grab_fr --config-file complet.conf --output part5.xml --slow --days 1 --offset 4
xmltv tv_grab_fr --config-file complet.conf --output part6.xml --slow --days 1 --offset 5
xmltv tv_grab_fr --config-file complet.conf --output part7.xml --slow --days 1 --offset 6
xmltv tv_grab_fr --config-file complet.conf --output part8.xml --slow --days 1 --offset 7