Designed by Derf !
73 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter






   

Une recherche sur votre site en 2 minutes chrono

MSN Search + RSS = Moins de 2 minutes





Aleks
Une des grosses problématiques à laquelle on a à faire face lorsqu’on s’occupe d’un site est de fournir un moyen de rechercher des informations dessus. Pour cela il existe plein de solutions mais elles sont toutes complexes à mettre en place et coûteuses en performance. Je vais vous présenter dans cet article la solution la plus simple que j’ai pu trouver. L’idée originale est de Ryan Farley’s

 Télécharger les sources 
Exemple : Projet "Recherche web" (sur Dotnet-Project)


Présentation

Cela faisait longtemps que je souhaitais proposer une recherche sur mon site (www.Dotnet-Project.com) mais je ne voulais pas mettre en place une usine à gaz.
J’avais donc pensé à récupérer d’une façon ou d’une autre les résultats de Google.
Puis je suis tombé sur le post de Ryan et ce n’est pas par Google mais par le tout nouveau MSN Search (search.msn.com) que j’allais passer.
Bien entendu, cette solution implique que votre site soit correctement indexé sur ce moteur de recherche.


La technique

Le moteur de recherche MSN Search permet de récupérer les résultats sous forme de flux RSS. C’est la base de la solution.
Bas oui, pourquoi essayer de faire en quelques minutes (ou heure ... ou jours d'ailleurs) ce que d'autres font depuis bien des années ?

Il suffit donc de récupérer le flux qui provient de cette URL :

http://search.msn.com/results.aspx?q=site%3ADotnet-Project.com+Framework&format=rss

où Dotnet-Project.com est le site sur lequel rechercher et Framework le mot clé.

Il ne reste plus qu’à mettre en forme le résultat. M’étant engagé à faire l’exercice en 2 minutes il fallait bien entendu trouver là encore une solution rapide.
Ici, c’est le Custom Control RssFeed de Scott Mitchell qui va me permettre de tenir mon engagement. Vous pouvez le télécharger ici : http://www.gotdotnet.com/workspaces/workspace.aspx?id=6a116a0f-66c4-4f91-9e13-a0d00960b9ad


Le code

Voyons maintenant ce que cela donne concrètement.
Tout d’abord la partie aspx : Il suffit de placer le contrôle RssFeed et de configurer le rendu à votre guise.
Voici un exemple :

<skm:rssfeed id="rfResult" runat="server" HeaderText="" Font-Size="10pt" width="80%" HorizontalAlign="center"
   MaxItems="100" BorderStyle="None" GridLines="None" ShowHeader="False" ShowPubDate="False">
   <ALTERNATINGITEMSTYLE BackColor="#EFEFEF"></ALTERNATINGITEMSTYLE>
   <ITEMTEMPLATE>
   <A href='<%# DataBinder.Eval(Container, "DataItem.Link") %>'>
   <%# DataBinder.Eval(Container, "DataItem.Title") %>
   </A>
   <BR>
   <%#DataBinder.Eval(Container, "DataItem.Description")%>
   <BR>
   <BR>
   </ITEMTEMPLATE>
</skm:rssfeed>


Vous allez nécessairement avoir besoin de rajouter un TextBox et un bouton pour effectuer vos recherches. Je pense qu’il n’y a pas besoin d’explication à ce niveau.
Enfin le code C# à placer, par exemple, dans l’évènement click d’un bouton :

private void btnRecherche_Click(object sender, System.EventArgs e)
{
   if(txtRecherche.Text.Length > 0)
   {
      string search = string.Format("http://search.msn.com/results.aspx?q=site%3A{0}+{1}&format=rss",
         "Dotnet-Project.com", HttpUtility.HtmlEncode(txtRecherche.Text));

      rfResult.DataSource = search;
      rfResult.DataBind();
   }
}


Comme vous pouvez le voir, le contrôle RssFeed prendre comme source une URL qui sera celle du moteur de recherche MSN Search avec le site et le(s) mot(s) clé(s) à rechercher.


Conclusion

Cet article présente une solution simple et rapide pour offrir à votre site des recherches efficaces.

Mais au-delà de la technique, j’ai souhaité partager avec vous ma vision du développement qui consiste à rechercher au sein des diverses communautés existantes des solutions à mes problèmes de tous les jours.

C’est dans ce but que j’ai d’ailleurs créé le projet Dotnet-Project Framework (projet, aide en ligne) qui est un exemple, parmi d’autre, de ce que les communautés peuvent vous apporter.

 Télécharger les sources 
Exemple : Projet "Recherche web" (sur Dotnet-Project)


Pour pouvoir écrire dans ce forum, identifiez-vous !

  v1.3p © ASP-PHP.net 2002  

Aleks le 14/03/2005 (19 932 hits)
Didier Téléchargez gratuitement et légalement des logiciels Microsoft ! Si, si ;)
  • Visual Studio 2010
  • Office 2010
  • Expression Studio 3
  • SQL Server 2008
  • et d'autres...
Au fil des news  
Magazines - Le N°128 de Programmez est disponible
Magazines - Le N°127 de Programmez est disponible
Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 6
Pour continuer dans le même style, je vous propose une suite au précédent article. Rechercher tous ...
Adobe - Adobe Photoshop.com Mobile pour iPhone 1.1
JavaScript - Ajouter une page dans vos favorites
Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 5 -
Je vous propose cette fois deux astuces. Comment exporter une feuille de style avec l'aide de ...
SharePoint Personalization Site Links - Les liens personnalisés des MySite SharePoint
Nous avons vu dans les articles précédents comment agrémenter les pages de recherche afin de ...
Magazines - Le n°126 de Programmez est disponible
Outils - Traducteur en ligne automatique pour site web
Adobe - Adobe Photoshop.com Mobile pour Iphone
Magazines - Le n°125 de Programmez est disponible
Adobe - Adobe AIR 2 et Flash Player 10.1version bêta
Les conférences autour des technologies Microsoft - Liste non exhaustive des grands évènements
Nous allons essayer de regrouper un grand nombre des évènements autour des technologies Microsoft ...
Magazines - Le n°124 de Programmez est disponible
PHP - Forum PHP 2009
Composants - eFace - XAML en Java
WPF - Désactiver le bouton de réduction d'une fenêtre
Magazines - Le n°123 de Programmez est disponible
Magazines - Le n°122 de Programmez est disponible
Auditer une ferme SharePoint - Assurer le bon fonctionnement de SharePoint
Dans le cadre de la bonne gestion de son environnement SharePoint, il est utile de faire un ...
SQL Server 2008 Report Builder 2.0 - Installation et utilisation de Report Builder 2.0
Dans le cadre de la création de rapports pour SQL Server Reporting Services 2008, un outil est ...
Magazines - Le HS N° 1 de Web Design est disponible
Adobe - Adobe propose en Open Source les frameworks.....
Outils - EntityBuilder
CSharp - Sérialisation XML de vos objets
Magazines - Le n°121 de Programmez est disponible
Adobe - Adobe annonce MAX 2009 !
Outils - WhoIs
[MAJ] Dreamweaver MX + Php + MySql - Les formulaires - partie 3
Mise à jour du code, par DB 77, affichage du code erreur, dans la page erreur.php, traduction des ...
PHP - News avec photo - Système de gestion - affichage
Gestion - Administration - Affichage d'une "News", "Actualité", "Info", ... avec : - mise en forme ...
Outils - Crypt
Dreamweaver Php Mysql - Région répétée imbriquée
Je rebondis, sur un post du forum, pour vous montrer comment obtenir grâce à l'extension Simulated ...
Magazines - Le n° 120 de Programmez est disponible
Gérer les bases de contenu SharePoint - Gérer la croissance du volume des données
Dans le cadre de la gestion quotidienne de ferme SharePoint, il existe une partie qu'il faut ...
PHP - Le Coach PHP sur Visual Studio
.NET - Ecrire une application .NET utilisant MySQL
PHP - Utilisation de PHP dans le monde Microsoft
Magazines - Le n° 119 de Programmez est disponible
Adobe - Adobe annonce Photoshop Marketplace
[MAJ] Tutoriel AJAX simple - En avant vers le WEB2.0
Mis à jour le 20/04/2009
Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
  Scripts : Scripting | ASP-PHP | ASP.net | Divers
  Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
v3b © Didier 2003   
 

Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
 TechNet ASP-magazine DotNet Project Groupes Utilisateurs Microsoft MVP