Utiliser le Scraping Browser
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte00:00:00 :Dans cette partie, on va voir comment utiliser le Scrapping Browser de Bright Data qui est unenouveauté de leur offre. Le Scrapping Browser, l'avantage c'est qu'il peut être utilisé avec
00:00:09 :des librairies comme Playwright qu'on va voir dans d'autres parties avec une utilisation surle site Airbnb. Dans ce cas-ci, je vais juste vous montrer les bases de comment l'utiliser. Vous
00:00:17 :allez voir que c'est assez simple à mettre en place avec là encore tous les exemples de codesqui nous sont fournis par Bright Data. Donc de nouveau sur votre tableau de bord, vous pouvez
00:00:25 :ajouter un Scrapping Browser en cliquant sur Add et ajouter le Scrapping Browser. Vous pouvez luidonner un nom, moi comme j'en ai déjà créé un, je vais me rendre sur la page de mon ScrappingBrowser ici et on va avoir ensuite les informations de nouveau avec le host, le username et le
00:00:39 :password et les adresses IP qui sont autorisées ou qui sont bloquées. Dans la configuration, on n'apas grand chose, on a ici juste quelques options avancées qui nous permettent de spécifier si onsouhaite mettre des headers et des cookies spécifiques. Donc par exemple, vous pouvez
00:00:53 :chercher ici si on veut voir avec Amazon est-ce qu'il est possible de rajouter des en-têtes, c'estle cas. Donc vous voyez ici on est prêt à prouver pour modifier toutes ces en-têtes et tous ces
00:01:01 :cookies sur la requête qui serait effectuée vers Amazon. Donc si par exemple on souhaite changer leUser Agent, vous voyez qu'on peut le faire ici. On a cette possibilité avec notre requête de
00:01:10 :modifier ces informations. Personnellement, je n'ai jamais eu besoin de changer quoi que ce soit. Tousles blocages sont débloqués automatiquement par le Scrapping Browser qui s'assure de faire letravail à ma place. Donc ça me va parfaitement. Donc n'oubliez pas d'activer votre proxy et vous
00:01:22 :pouvez ensuite aller voir les codes d'intégration. Alors là vous allez voir qu'on a pas mal plus dechoix. On a les choix avec différentes librairies, notamment avec Node.js, Python et C Sharp. Nous ce
00:01:32 :qui va nous intéresser donc c'est le Python et à l'intérieur de Python on peut choisir différenteslibrairies, Puppeteer, Playwright ou Selenium. Donc nous on va utiliser Selenium et là vous avez un
00:01:41 :exemple de code. Alors il y a pas mal de choses qu'on va enlever ici. Je vais copier le code etje vais vous montrer ce que ça donne dans PyCharm. Donc je vais coller le code ici. Alors n'oubliez
00:01:48 :pas d'installer Playwright. On va l'installer avec Pip dans notre environnement virtuel. Donc Pipinstall Playwright. Ensuite vous devez faire Playwright install pour installer les navigateurs
00:01:57 :dont il va avoir besoin. Donc il va installer Chrome et Firefox si mes souvenirs sont bons. Moidans ce cas-ci ils sont déjà installés donc il ne va pas refaire l'installation mais vous, vousdevriez avoir ici un indicateur du téléchargement et de l'installation de ces navigateurs. Donc je
00:02:10 :vais revenir dans mon script. Vous voyez ici que le script de base qui vous est fourni sur BrightData, il utilise l'API Async de Playwright. Nous on va utiliser la librairie Synchron. Donc ici à
00:02:21 :la place de Async on va mettre Sync API et dans l'import on va importer Sync Playwright. Et là onva presque enlever tout ça ici. Là vous voyez à chaque fois on a des Async Await. Donc notre code
00:02:30 :va être beaucoup plus simple avec l'API Sync et dans l'autre cas on va se focaliser uniquement surl'API Synchron de Playwright. La seule différence donc comme vous voyez ici c'est qu'il faut utiliser
00:02:39 :les Async et les Await à chaque fois si vous voulez faire des requêtes asynchrone pour enfaire plusieurs en même temps et avoir l'API Asynchron qui va automatiquement attendre avantde continuer les prochaines actions. Donc dans ce cas ci moi ce que je vais faire c'est juste copier
00:02:51 :cette ligne. On va également simplifier le code en enlevant la fonction. Donc je vais juste garderla variable browser ici et je vais enlever tout le reste ici. On va voir comment naviguer par la
00:02:59 :suite. Là je vais enlever ma fonction main. On va aussi enlever cette structure conditionnelle. Doncvous voyez il y a pas mal de choses qui sont enlevées et on va juste garder ce width qu'onva mettre au début. Donc en fait ici on va faire un context manager qui va nous permettre d'utiliser
00:03:12 :Playwright. Donc là ce n'est pas Async Playwright mais juste Sync Playwright. Donc ça c'est ce qu'ona importé tout en haut de notre script. Je vais enlever l'import de AsyncIO également. Donc vous
00:03:20 :voyez ça fait déjà pas mal de ménages et là à la place de pw du coup je vais prendre la variableque j'ai créé ici Playwright. Donc si je reviens qu'est ce qu'on a ici ? On a tout simplement notre
00:03:30 :import de la librairie sync de Playwright. On a cette variable globale ici qui est tout simplementles informations pour se connecter au Scrapping Browser avec le host, le username et le password.
00:03:40 :Et ensuite ici notre context manager. Donc on va créer une instance de Playwright à partir del'API Sync Playwright et on va faire playwright.chromium.connectovercdp. Donc là vous
00:03:50 :pouvez choisir le navigateur que vous souhaitez utiliser. On peut également utiliser Firefox,moi je vais garder Chromium ici. Et on va se connecter à notre Scrapping Browser avec cette
00:03:58 :adresse qui est donc dans la variable globale. Ensuite je peux créer une nouvelle page donc jevais faire browser.newpage et avec cette page on va pouvoir naviguer quelque part avec goto.
00:04:07 :Donc là dans ce cas ci je veux dire tout simplement qu'on va aller sur la page de google et je vaisaprès cette ligne faire un page.pause pour que le script se mette en pause et qu'on puisse voir ce
00:04:15 :qu'il se passe. Donc je vais lancer mon script et vous voyez que là rien ne se passe donc on n'a pasde navigateur qui s'ouvre ici donc c'est normal avec Playwright on avait vu si je fais ici justeun launch qu'on peut spécifier headless égale à false et si je lance dans ce cas ci on va bien
00:04:29 :avoir un navigateur qui s'ouvre. Donc ce n'est pas le cas dans ce cas ci avec le ScrappingBrowser quand on se connecte avec connectovercdp. Par contre ce qu'on peut faire, donc je vais
00:04:37 :mettre juste un point de debug ici pour arrêter le script et je relance mon script en debug,on va voir qu'on peut accéder à ce navigateur si je reviens sur la page du Scrapping Browser onva avoir un debugger ici donc Chrome DevTool Debugger. Si je clique là vous voyez qu'on a
00:04:50 :une connexion qui apparaît donc ça c'est juste parce que j'ai lancé mon script si j'arrête lescript ici cette connexion ne va plus apparaître donc là je relance, je quitte, je reviens surChrome DevTool et là vous voyez qu'on n'a aucune session qui est active. Donc c'est bien parce
00:05:02 :qu'on a une session ici sur PyCharm qui est lancée qu'on va pouvoir y accéder directementdepuis Bright Data. Donc je reviens ici, je clique sur Chrome DevTool, là on a bien notre session et
00:05:10 :quand on clique dessus on va avoir un nouvel onglet qui s'ouvre avec notre navigateur exactementcomme si on l'avait ouvert avec Playwright sans passer par cette connexion. Donc là on va retrouver
00:05:20 :la page de Google, on a notre site qui s'ouvre dans un nouvel onglet et on voit notre site ettout ce qui va se passer. Donc là si je faisais d'autres actions ici par la suite et que je
00:05:28 :continue avec mon debugger on verrait ces actions qui seraient répétées ici sur notre page dansle debugger de Bright Data. Donc on verra dans d'autres parties de cette formation comment mettre
00:05:37 :tout ça en pratique sur le site d'Airbnb mais vous voyez que la base du code est assez simple,on va juste rajouter ici cette connexion over CDP qui est donc un petit peu différente de cequ'on avait fait quand on utilisait Playwright avec juste le launch et on va passer par cette
00:05:51 :fenêtre pour voir ce qu'il se passe en passant par le debugger de Bright Data. On va voir égalementdes techniques pour l'ouvrir automatiquement pour ne pas avoir à chaque fois à passer par le ChromeDevTool sur le tableau de bord. Donc ne vous inquiétez pas il y a des façons de faire plus
00:06:03 :facile avec du code qui nous permettent directement dans notre script de décider de l'ouvrir ou nonet ça va s'ouvrir automatiquement pour nous dans une nouvelle page Chrome pour qu'on puisse voirce qu'il se passe. Donc voilà pour l'utilisation basique du Scrapping Browser, là encore n'oubliez
00:06:16 :pas vous pouvez ajouter des adresses IP ou les bloquer si jamais vous avez des problèmes c'estpeut-être parce que votre IP est bloquée. Si c'est le cas Bright Data va vous le dire, il va vous
00:06:24 :envoyer un email donc il fait ça par mesure préventive sur tous ses outils si jamais ilvoit qu'il y a quelque chose de suspicieux mais s'il n'y a aucune raison donc de bloquer votre IPvous pouvez venir ici et juste supprimer l'IP qu'il aura rajouté ici qui sera votre adresse IP.
00:06:37 :Donc par défaut il n'y en a aucun dans Allowed et Blocked donc ça veut dire que tout le monde peuty accéder mais si jamais vous voulez le restreindre ou vous assurez que vous n'êtes pas restreint vouspouvez aller voir ça ici. Donc vous voyez ces trois outils très faciles à utiliser il suffit
00:06:48 :de les ajouter Scrapping Browser, Web Unlocker, Residential Proxy, à chaque fois vous avez lesexemples de codes qui sont disponibles sur les interfaces de ces outils donc c'est très facileà utiliser et dans les prochaines parties donc avec les projets Airbnb et Ecom Notifier on vavoir de multiples exemples dans lesquels on va utiliser tous ces outils pour faire un Scrapping Ethic.
Ce n'est pas fini...
✋
Tu as complété % du parcours 🔥
Termine l'intégralité de la formation pour pouvoir débloquer ton attestation de réussite.