Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
precise-creer-unity-lens [Le 21/02/2013, 13:31]
80.13.73.109 ajout tags
precise-creer-unity-lens [Le 07/06/2017, 14:01] (Version actuelle)
L'Africain tag, et note intro
Ligne 1: Ligne 1:
-{{tag>Precise ​unity-lens programmation python ​quickly}}+{{tag>​unity programmation python ​À_RECYCLER}}
  
 ====== Créer une loupe Unity ====== ====== Créer une loupe Unity ======
 +<note warning>​Quickly étant abandonné cette page est obsolète, il serait utile tout de même de la recycler pour proposer une autre methode pour créer des loupes</​note>​
 Le Dash Unity propose une manière simple et conviviale de visionner du contenu intéressant. À l'aide des Loupes, il est désormais possible de rechercher une information en local et sur le Web. Dans cet article, nous apprendrons à construire facilement une loupe permettant de chercher confortablement un article de Wikipédia, directement depuis votre Bureau. Le Dash Unity propose une manière simple et conviviale de visionner du contenu intéressant. À l'aide des Loupes, il est désormais possible de rechercher une information en local et sur le Web. Dans cet article, nous apprendrons à construire facilement une loupe permettant de chercher confortablement un article de Wikipédia, directement depuis votre Bureau.
  
Ligne 9: Ligne 10:
 ===== Prérequis ===== ===== Prérequis =====
 Pour suivre ce tutoriel, vous aurez besoin de : Pour suivre ce tutoriel, vous aurez besoin de :
-  * [[precise|Ubuntu 12.04 LTS (« The Precise Pangolin »)]] +  * [[precise|Ubuntu 12.04]] ​(ou version ultérieure:​ 12.10,13.04,...)
-  * [[quickly|Quickly]] +
-  * [[quickly-unity-lens-template|Quickly Unity Lens Template]] +
- +
-Vous pouvez installer ces deux derniers en un clic **[[apt>​quickly,quickly-unity-lens-template|ici]]**.+
  
 ===== Créer la loupe Wikipédia ===== ===== Créer la loupe Wikipédia =====
Ligne 108: Ligne 105:
 <​code=python>​return results[1]</​code>​ <​code=python>​return results[1]</​code>​
  
-Notre fonction ''​wikipedia_query''​ devrait ressembler au code ci-dessous. On a ici ajouté un ''​try''​ et un ''​except''​ afin de prendre en compte des éventuelles erreurs qui pourraient survenir (erreur de réseau, erreur de transmission des résultats, etc.). S'il y a une erreur, un message s'​affichera dans la console et une liste de résultats vide sera renvoyée.+Notre fonction ''​wikipedia_query''​ devrait ressembler au code ci-dessous. On a ici ajouté un ''​try''​ et un ''​except''​ afin de prendre en compte des éventuelles erreurs qui pourraient survenir (erreur de réseau, erreur de transmission des résultats, etc.). S'il y a une erreur, un message s'​affichera dans la console et une liste de résultats vide sera renvoyée
 +<​code=python>​def wikipedia_query(self,​search):​ 
 +    try: 
 +        search = search.replace("​ ", "​|"​) 
 +        url = ("​%s/​w/​api.php?​action=opensearch&​limit=25&​format=json&​search=%s"​ % (self.wiki, search)) 
 +        results = simplejson.loads(urllib2.urlopen(url).read()) 
 +        print "​Searching Wikipedia"​ 
 +        return results[1] 
 +    except (IOError, KeyError, urllib2.URLError,​ urllib2.HTTPError,​ simplejson.JSONDecodeError):​ 
 +        print "Error : Unable to search Wikipedia"​ 
 +        return []</​code>​
  
 **Dès lors, tout ce que nous aurons à faire est de « brancher » cette nouvelle fonction à la fonction ''​search''​ définie plus haut.** **Dès lors, tout ce que nous aurons à faire est de « brancher » cette nouvelle fonction à la fonction ''​search''​ définie plus haut.**
Ligne 123: Ligne 130:
     pass     pass
 </​code>​ </​code>​
-On pourrait traduire ce code par : « À chaque résultat ​renvoyé ​renvoyé par la fonction ''​wikipedia_query'',​ ajouter un article à la loupe ».+On pourrait traduire ce code par : « À chaque résultat renvoyé par la fonction ''​wikipedia_query'',​ ajouter un article à la loupe ».
 Ce qui se passe dans ''​results.append''​ est très important pour comprende ce que nous pourront afficher dans une loupe. Voici ce dont nous avons besoin pour passer les résultats à Unity (**ne copiez pas ce code, il ne fonctionnera pas !**) : Ce qui se passe dans ''​results.append''​ est très important pour comprende ce que nous pourront afficher dans une loupe. Voici ce dont nous avons besoin pour passer les résultats à Unity (**ne copiez pas ce code, il ne fonctionnera pas !**) :
 <​code=python>​ <​code=python>​
Ligne 138: Ligne 145:
 ===== Utiliser votre loupe ===== ===== Utiliser votre loupe =====
 Vous pouvez maintenant faire apparaître votre loupe dans le Dash en tapant la commande suivante dans le Terminal : Vous pouvez maintenant faire apparaître votre loupe dans le Dash en tapant la commande suivante dans le Terminal :
-<​code>​sudo quickly install</​code>​+<​code>​sudo quickly install</​code> ​(l'​écran devrait clignoter 2-3 fois, ne pas s'​inquiéter,​ c'est juste Unity qui se relance pour prendre en compte la nouvelle loupe fraîchement crée)
 ...et le démarrer en tapant : ...et le démarrer en tapant :
-<​code>​quickly run</​code>​+<​code>​quickly run</​code><​note>​Il est possible que vous obteniez cette erreur en lançant cette commande:<​code>​Traceback (most recent call last): 
 +  File "​bin/​wikipedia",​ line 30, in <​module>​ 
 +    from wikipedia import WikipediaLens 
 +  File "/​home/​user/​wikipedia/​wikipedia/​__init__.py",​ line 41 
 +SyntaxError:​ Non-ASCII character '​\xc3'​ in file /​home/​user/​wikipedia/​wikipedia/​__init__.py on line 41, but no encoding declared; see http://​www.python.org/​peps/​pep-0263.html for details</​code>​Pour y remedier, il suffit juste d'​ajouter la ligne suivante au début du fichier (juste avant les '​import'​):<​code=python>#​ -*- coding:​utf-8 -*-</​code>​... et de relancer la commande suivante: <​code>​sudo quickly install && quickly run</​code></​note>
 {{http://​developer.ubuntu.com/​wp-content/​uploads/​2012/​04/​Screenshot-from-2012-03-30-172604-700x359.png}}\\ {{http://​developer.ubuntu.com/​wp-content/​uploads/​2012/​04/​Screenshot-from-2012-03-30-172604-700x359.png}}\\
 Il fait ce qu'il a à faire, c'est bien, voyons maintenant comment l'​améliorer… Il fait ce qu'il a à faire, c'est bien, voyons maintenant comment l'​améliorer…
  • precise-creer-unity-lens.1361449906.txt.gz
  • Dernière modification: Le 21/02/2013, 13:31
  • par 80.13.73.109