Marionnettiste : Obtenir l’URL actuelle – Techozu

Puppeteer est une API de contrôle immensément populaire pour Chrome. Il est bien pris en charge, mis à jour souvent et propose des centaines de méthodes différentes. Étant donné que les développeurs l’utilisent principalement pour naviguer sur des pages Web, il est utile de pouvoir obtenir facilement l’URL actuelle. Voici comment récupérer les URL des instances de Puppeteer et plusieurs autres méthodes utiles.

Obtenir l’URL actuelle dans Puppeteer

Utilisez le page.url() méthode pour renvoyer une chaîne URL de la page actuelle. Voici un exemple de codage complet de la façon dont vous utiliseriez le page.url() méthode.

const puppeteer = require('puppeteer')

;(async () => {
    const browser = await puppeteer.launch()
    const page = await browser.newPage()
    await page.goto('https://techozu.com')

    let currentURL = page.url()

    console.log(currentURL) // https://techozu.com

    await browser.close()
});
      
    

Obtenir l’URL actuelle de l’instance Puppeteer est utile si, à un moment donné, le navigateur a effectué des redirections ou votre code a effectué des clics.

Notez que page.url() n’est pas une opération asynchrone et ne vous oblige pas à ajouter await à elle.

Obtenir toutes les URL ouvertes dans Puppeteer

Utilisez la méthode browsers.pages() pour renvoyer toutes les pages actuellement ouvertes dans l’instance du navigateur. Enregistrez ces informations dans une variable, puis bouclez sur la variable pour obtenir toutes les URL. Voici un exemple de codage :

const browser = await puppeteer.launch()

const page = await browser.newPage()
await page.goto('https://example.com')

const page2 = await browser.newPage()
await page2.goto('https://techozu.com')

let pages = await browser.pages()
    
pages.forEach((p) => {
  console.log(p.url())
})

// about:blank
// https://exmaple.com
// https://techozu.com

await browser.close()
      
    

L’exemple ci-dessus parcourt chaque page et appelle le page.url() méthode, mais vous pouvez également utiliser la map fonction si vous voulez simplement obtenir un tableau d’URL ouvertes.

const browser = await puppeteer.launch()

const page = await browser.newPage()
await page.goto('https://example.com')

const page2 = await browser.newPage()
await page2.goto('https://techozu.com')

let pages = await browser.pages()
    
let urls = pages.map((p) => p.url())

console.log(urls)

// [ 'about:blank', 'https://example.com/', 'https://techozu.com/' ]

await browser.close()
      
    

Autres méthodes d’URL de marionnettistes utiles

Voici quelques autres méthodes qui pourraient vous être utiles lorsque vous travaillez avec des URL dans puppeteer.

Utilisation page.goto(URL) pour accéder à une URL sur la page référencée.

await page.goto('https://techozu.com')
      
    

Utilisation page.goBack() pour naviguer en arrière dans l’historique de navigation

await page.goBack()
      
    

Utilisation page.goForward() pour naviguer vers l’avant dans l’historique de navigation

await page.goForward()
      
    

Utilisation page.close() pour fermer la page référencée mais pas l’instance du navigateur elle-même.

await page.close()
      
    

Ce ne sont là que quelques fonctions qui pourraient être utiles. Vous pouvez lire la documentation complète de l’API ici.

Nous espérons que les informations ci-dessus vous aideront dans votre projet de codage. Vous pouvez consulter notre section Javascript pour des guides plus utiles. Bon codage !

À propos de admin

Voir aussi

Compte Instagram temporairement bloqué ? Voici comment y remédier

Vous avez essayé de vous connecter à votre compte Instagram uniquement pour être accueilli par …

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

x