I Has A Bug (le blog de jye)
Retour au blog <<

TV Shows : Mon module Netvibes (2ème partie)

Jeudi 10 janvier 2008 à 10 h 40
Précédemment sur ce blog :

Parmi tous les widgets que j'utilise, mon préféré est celui de ben, TV Series qui permet de consulter les prochains épisodes à venir des séries que l'on suit. Le souci ? Réalisé depuis la vieille API Netvibes, celui-ci n'est pas fait en UWA. Du coup ma copine ne peut pas le rajouter à son iGoogle, et moi je ne peux pas le rajouter à mon Vista. J'ai donc décidé de créer mon propre module qui fera probablement la même chose que celui de ben, sauf que le miens sera fait en UWA et offrira donc une portabilité intéressante.



Histoire de délimiter les choses et de ne pas partir n'importe comment, voici un très léger cahier des charges :

- Le widget TV Shows sera automatique. Une fois terminé il récupérera tout seul les nouvelles séries, et enlèvera tout seul les séries terminées/annulées/whatever.
- Il permettra d'ajouter un nombre infini de série à sa liste de suivi.
- L'utilisateur pourra décider d'afficher les séries à venir des 7 ou 15 prochains jours ainsi les 7 et 15 jours passés.
- L'utilisateur pourra supprimer des séries de sa liste (obviously).

Voilà pour les fonctionnalités de base (indispensable à mon gout). Et voici quelques fonctionnalités bonus :

Pour chaque série, vous pourrez :
- Marquer comme Vu (je ne sais pas comment gérer cette feature)
- Rechercher sur un moteur de recherche personnalisable via les préférences
- Consulter la ficher TV.com

Il est aussi probable qu'un clic sur le titre de l'épisode affiche son résumé TV.com (en anglais malheureusement, si vous savez ou trouver en français, pourquoi pas).

Voilà, le widget est maintenant défini. Le plus dur maintenant est de récupérer toutes les informations liées aux séries et de façon automatique. C'est à dire, quelle sont les séries actuellement en cours. Comment récupérer la liste des épisodes à venir d'une série avec leur date, numéro d'épisode etc. Pour cela, on n'a pas d'autres choix que de trouver un site de qualité qui met à jour constamment ses informations. TV.com est très complet mais totalement ingérable. J'ai donc mis de côté ce site pour récupérer les informations (cependant j'irais récupérer le résumé de l'épisode sur ce site). J'ai par contre trouvé le site epguides.com qui lui, est, complet et à jour très rapidement.

A partir de ce site, je peux donc consulter les séries en cours et pour chaque série, je peux avoir la liste des épisodes (et donc la liste des épisodes à venir pour ceux qui ont été annoncés). Malheureusement, aucun flux RSS n'est mis à disposition par le site epguides.com. Je vais donc devoir extraire les données qui m'intéressent.

Nous avons donc deux types de données à récupérer :

- La liste des séries actuelles qui est disponible sur cette page : http://epguides.com/menu/current.shtml.
- La liste des épisodes pour une série : http://epguides.com/Lost/.

Le traitement des données se fera donc en PHP. J’expliquerai sur mon prochain billet comment je récupère ces données (terminé) et on se penchera sur le design du widget (en cours). N’hésitez pas à me donner vos suggestions pour ce widget !
Jeudi 10 janvier 2008 à 13 h 57
Tu pourrais peut-être utiliser les flux de tvRSS (mais si tu as déjà scrapé epguides, c'est pas la peine).
par un Anonyme
Jeudi 10 janvier 2008 à 20 h 22
Si tu comptes afficher les épisodes passés des 7/15 derniers jours, je pense qu'il faut le mettre dans une boîte déroulante, sinon ça va vite être le bordel si on suit plus de 3 séries.
par jye
Dimanche 13 janvier 2008 à 16 h 42
Oui DjMerguez j'ai scrapper moi même les pages qui m'interessaient, je compte rajouter un système de cache pour améliorer les perfs de récupérations des donées.

Anonyme : Je viens de rajouter une fonction qui permet de personnaliser le nombre de jours que l'on souhaite afficher. Par conséquent j'ai aussi rajouter un système de pagination.
Tout le monde peut publier un commentaire, vous n'avez pas besoin de compte (dans ce cas votre commentaire ne sera publié qu'une fois validé par le propriétaire du blog)

Commenter

Tags autorisés : [b] [/b], [i] [/i], [u] [/u], [code] [/code], [img]Adresse d'une image[/img], [url=Adresse d'un site web] [/url]
Vous pouvez aligner vos images à droite ou à gauche en modifiant le tag [img] comme ceci : [img right] ou [img left].

Pour vos vidéos/animations flash : [video]Adresse d'une animation[/video], pour préciser la largeur et hauteur : [video width=100 height=200]...[/video]