Apprendre à coder pour les vrais débutants (scrap, scan ou autre...)

Bonjour à tous,

Je fais un petit retour sur la Microsoft Virtual Academy qui rassemble un ensemble de tutoriels pour tous les niveaux et pour tout faire (des jeux, appli mobiles, logiciel bureau etc…)

Pour les vrais débutants, voici de quoi commencer pour apprendre les bases https://mva.microsoft.com/fr-fr/training-courses/apprendre-coder-pour-les-vrais-d-butants-12715?l=SBYDFFVUB_4505192806

Pour ceux qui veulent scrapper, voici quelques pistes de recherche =>

Si vous avez des questions, je peux aider :wink:

PS : C’est du C#. Avec ce langage, vous pourrez faire des logiciels (WPF), des sites internet (Asp.Net MVC 6), et des applications mobiles iOS, Androïd et Windows pour smartphone et tablette avec Xamarin.

PS2: C’est avec ça que je fais mes tools

PS3: Ne grillez pas les étapes et faites plusieurs tutoriels avant de vous lancer dans votre projet de scrapping

2 Likes

Voici un petit exemple de code C# permettant de scrapper des informations dans une page. A titre d’exemple, je suis parti de ce sujet où @christohpe demande de l’aide pour scrapper des informations d’une page.
C’est un cas simple qui se prêtait bien pour un exemple.

Voici le code commenté (pour les vrais débutants, regardez le tutos au dessus pour comprendre un peu mieux). Ce code ne permet que d’extraire les informations que d’une seule page. On n’exporte pas encore le résultat (fichier, base de données, mail ou autre)

 `public void GetExhibitors()
        {
            //On télécharge la page
            var client = new WebClient();
            var pageContent = client.DownloadString("http://www.franchiseparis.com/Recherche-exposants/#search=rpp%3D64%26startRecord%3D1");

            //On analyse la page html
            var doc = new HtmlDocument();
            doc.LoadHtml(pageContent);

            //On crée la liste des exposants (vide pour le moment)
            var exhibitors = new List<Exhibitor>();

            //Après avoir regardé la structure de l'html, on récupère les noeuds qui nous intéresse
            var listNodes = doc.DocumentNode.SelectNodes("//li[contains(@class, 'resultItem')]");
            foreach (var listNode in listNodes)
            {
                //On crée un exposant
                var exhibitor = new Exhibitor();

                //On le complète avec les informations contenues dans le noeud courant
                exhibitor.Title = listNode.SelectSingleNode("*/*[@class='name']").InnerText;
                exhibitor.Country = listNode.SelectSingleNode("*/*[@class=' country']").InnerText;

                //On ajoute l'exposant à la liste des exposants
                exhibitors.Add(exhibitor);
            }
        }

        public class Exhibitor
        {
            public string Title { get; set; }
            public string Country { get; set; }
            public string Headline { get; set; }
            public string Activity { get; set; }
        }`