Table des matières
1. Introduction à Playwright
2. Installez Playwright en utilisant
Enregistrement
Synchronisation
Asynchrone
Version mobile
3. Résumé
Prend en charge tous les navigateurs
Dispose d'une exécution rapide et fiable
Avec de puissantes fonctionnalités d'automatisation
Mais il a aussi des limites
Maison développement back-end Tutoriel Python Cet outil Python pour débutants produit par Microsoft est tellement délicieux !

Cet outil Python pour débutants produit par Microsoft est tellement délicieux !

Apr 12, 2023 am 10:55 AM
python 微软 小白神器

Cet outil Python pour débutants produit par Microsoft est tellement délicieux !

Bonjour à tous, je suis une recrue !

J'ai récemment visité le site Web de G et découvert que Microsoft avait open source un projet appelé "playwright-python" en tant que projet en plein essor.

Cet outil Python pour débutants produit par Microsoft est tellement délicieux !

Playwright est un pur outil d'automatisation pour le langage Python. Il peut exécuter automatiquement les navigateurs Chromium, Firefox et WebKit via une seule API, sans même écrire de code, pour réaliser des fonctions d'automatisation.

Bien que l'outil de test Selenium dispose d'une documentation complète, son coût d'apprentissage interdit à de nombreux novices. En revanche, dramaturge-python est simplement un artefact pour les novices.

Est-ce que Playwright fonctionne vraiment avec Python ? La réponse est oui, Microsoft est prêt avec Playwright pour Python. Des modifications brutales de l'API peuvent survenir. Mais il y a de fortes chances que cela n'arrive pas, et Microsoft affirme qu'il ne le fera que s'il sait que cela améliorera votre expérience avec la nouvelle bibliothèque.

Cependant, Microsoft rappelle également que certains cas particuliers d'API spécifiques à un fournisseur ne sont pas encore pris en charge, comme la collecte du suivi Chromium, les rapports de couverture, etc.

1. Introduction à Playwright

Playwright est une puissante bibliothèque Python qui peut effectuer automatiquement des opérations automatisées sur les navigateurs grand public tels que Chromium, Firefox et WebKit en utilisant une seule API et prend en charge l'exécution en modes sans tête et sans tête.

La technologie d'automatisation fournie par Playwright est verte, puissante, fiable et rapide, prenant en charge les systèmes d'exploitation Linux, Mac et Windows.

Certains amis ont également fait l'éloge de cela : en tant que pur outil d'automatisation pour le langage Python, ce projet libère le code et réalise des fonctions d'automatisation.

2. Installez Playwright en utilisant

L'installation de Playwright est très simple et peut être résolue en deux étapes.

安装playwright库
pip install playwright
安装浏览器驱动文件(安装过程稍微有点慢)
python -m playwright install
Copier après la connexion

Les deux opérations pip ci-dessus sont installées séparément :

  • Installer la bibliothèque de dépendances Playwright, qui nécessite Python3.7+
  • Installer les fichiers du pilote de Chromium, Firefox, WebKit et d'autres navigateurs

Enregistrement

Vous ne le faites pas Nous n'avons pas besoin d'écrire une ligne de code pour utiliser Playwright, il nous suffit d'utiliser manuellement le navigateur, il enregistrera nos opérations, puis générera automatiquement des scripts de code.

Ce qui suit est le codegen de commande enregistré, une seule ligne.

命令行键入 --help 可看到所有选项
python -m playwright codegen
Copier après la connexion

L'utilisation de codegen peut être visualisée en utilisant --help S'il est simple à utiliser, ajoutez simplement le lien url directement après la commande. Si vous avez d'autres besoins, vous pouvez ajouter des options.

python -m playwright codegen --help
Usage: index codegen [options] [url]
open page and generate code for user actions
Options:
 -o, --output <file name>saves the generated script to a file
 --target <language> language to use, one of javascript, python, python-async, csharp (default: "python")
 -h, --helpdisplay help for command
Examples:
 $ codegen
 $ codegen --target=python
 $ -b webkit codegen https://example.com
Copier après la connexion

options signifiant :

  • -o : Enregistrez le script enregistré dans un fichier
  • --target : Spécifiez le langage pour générer le script, il existe deux types : JS et Python, la valeur par défaut est Python
  • -b : Spécifiez le pilote du navigateur

Par exemple, je souhaite effectuer une recherche sur baidu.com, utiliser le pilote Chrome et enregistrer les résultats sous forme de fichier Python my.py.

python -m playwright codegen --target python -o 'my.py' -b chromium https://www.baidu.com
Copier après la connexion

Après avoir entré la ligne de commande, le navigateur s'ouvrira automatiquement, et vous pourrez alors voir que chaque action sur le navigateur sera automatiquement traduite en code, comme indiqué ci-dessous.

Cet outil Python pour débutants produit par Microsoft est tellement délicieux !

Fermez automatiquement le navigateur une fois terminé et enregistrez le script d'automatisation généré dans un fichier py.

from playwright import sync_playwright
def run(playwright):
browser = playwright.chromium.launch(headless=False)
context = browser.newContext()
# Open new page
page = context.newPage()
page.goto("https://www.baidu.com/")
page.click("input[name="wd"]")
page.fill("input[name="wd"]", "jingdong")
page.click("text="京东"")
# Click //a[normalize-space(.)='京东JD.COM官网 多快好省 只为品质生活']
with page.expect_navigation():
 with page.expect_popup() as popup_info:
 page.click("//a[normalize-space(.)='京东JD.COM官网 多快好省 只为品质生活']")
 page1 = popup_info.value
# ---------------------
context.close()
browser.close()
with sync_playwright() as playwright:
run(playwright
Copier après la connexion

De plus, dramaturge fournit également des interfaces API synchrones et asynchrones, les documents sont les suivants.

  • Lien : https://microsoft.github.io/playwright-python/index.html

Synchronisation

Exemple de code ci-dessous : Ouvrez trois navigateurs dans l'ordre, accédez à la recherche baidu, prenez une capture d'écran et quittez.

from playwright import sync_playwright
with sync_playwright() as p:
for browser_type in [p.chromium, p.firefox, p.webkit]:
 browser = browser_type.launch()
 page = browser.newPage()
 page.goto('https://baidu.com/')
 page.screenshot(path=f'example-{browser_type.name}.png')
 browser.close()
Copier après la connexion

Asynchrone

Les opérations asynchrones peuvent être combinées avec asyncio pour effectuer trois opérations de navigateur en même temps.

import asyncio
from playwright import async_playwright
async def main():
async with async_playwright() as p:
 for browser_type in [p.chromium, p.firefox, p.webkit]:
 browser = await browser_type.launch()
 page = await browser.newPage()
 await page.goto('http://baidu.com/')
 await page.screenshot(path=f'example-{browser_type.name}.png')
 await browser.close()
 asyncio.get_event_loop().run_until_complete(main())
Copier après la connexion

Version mobile

Ce qui est encore plus étonnant, c'est que le dramaturge peut également prendre en charge la simulation de navigateur mobile. Ce qui suit est un morceau de code fourni par la documentation officielle, qui simule le navigateur Safari sur l'iPhone 11 pro à un emplacement géographique donné. Tout d'abord, accédez à maps.google.com, puis effectuez le positionnement et prenez une capture d'écran.

from playwright import sync_playwright
with sync_playwright() as p:
iphone_11 = p.devices['iPhone 11 Pro']
browser = p.webkit.launch(headless=False)
context = browser.newContext(
 **iphone_11,
 locale='en-US',
 geolocation={ 'longitude': 12.492507, 'latitude': 41.889938 },
 permissions=['geolocation']
)
page = context.newPage()
page.goto('https://maps.google.com')
page.click('text="Your location"')
page.screenshot(path='colosseum-iphone.png')
browser.close()
Copier après la connexion

De plus, il peut également être utilisé avec le plug-in pytest. Si vous êtes intéressé, vous pouvez l'essayer vous-même.

3. Résumé

playwright présente de nombreux avantages par rapport aux outils de test automatisés existants, notamment :

Prend en charge tous les navigateurs

  • Testé sur Chromium, Firefox et WebKit. Playwright dispose d'une couverture API complète pour tous les navigateurs modernes, notamment Google Chrome et Microsoft Edge (avec Chromium), Apple Safari (avec WebKit) et Mozilla Firefox.
  • Tests WebKit multiplateformes. Testez le comportement de votre application dans Apple Safari à l'aide de Playwright, créé avec WebKit pour Windows, Linux et macOS. Testé localement et sur CI.
  • Testez le téléphone. Testez vos applications Web réactives dans les navigateurs Web mobiles à l’aide de l’émulation d’appareil.
  • Sans en-tête et avec en-tête. Playwright prend en charge les modes sans tête (pas d'interface utilisateur du navigateur) et sans tête (avec interface utilisateur du navigateur) pour tous les navigateurs et toutes les plates-formes. Le mode en-tête convient au débogage, tandis que le mode sans en-tête convient à l'exécution CI/cloud.

Dispose d'une exécution rapide et fiable

  • API d'attente automatique. Les interactions avec le dramaturge attendent automatiquement que l'élément soit prêt. Cela améliore la fiabilité et simplifie le processus de rédaction des tests.
  • Pas d'automatisation du délai d'attente. Playwright reçoit les signaux du navigateur tels que les requêtes réseau, la navigation dans les pages et les événements de chargement de pages pour éliminer la gêne liée au sommeil interrompu.
  • Restez parallèle au contexte du navigateur. Réutilisez une seule instance de navigateur pour plusieurs environnements exécutables de contexte de navigateur isolés et parallèles.
  • Sélecteur d'éléments sexuels. Le dramaturge peut sélectionner des éléments en s'appuyant sur des chaînes destinées à l'utilisateur, telles que le contenu textuel et les balises d'accessibilité. Ces chaînes sont plus flexibles que les sélecteurs étroitement couplés à la structure DOM.

Avec de puissantes fonctionnalités d'automatisation

  • Plusieurs domaines, pages et cadres. Playwright est un pilote d'automatisation hors processus qui n'est pas limité par la portée de l'exécution de JavaScript au sein d'une page et peut automatiser des scénarios comportant plusieurs pages.
  • Contrôle réseau puissant. Playwright introduit l'interception de réseau à l'échelle du contexte pour terminer ou simuler les requêtes réseau.
  • Fonctionnalités Web modernes. Playwright prend en charge les composants Web avec des sélecteurs insérés, la géolocalisation, les autorisations, les travailleurs Web et d'autres API Web modernes.
  • Capacité à couvrir tous les scénarios. Prend en charge les téléchargements et téléchargements de fichiers, les iframes hors processus, les événements d'entrée natifs et même le mode sombre.

Mais il a aussi des limites

  • Support Old Edge et IE11. Playwright ne prend pas en charge les anciennes versions de Microsoft Edge ou IE11 (avis de dépréciation). Prise en charge du nouveau Microsoft Edge (sur Chromium).
  • Java Language Binding : L'API Playwright n'est actuellement pas disponible en Java ou Ruby. Il s'agit d'une limitation temporaire, car Playwright est conçu pour prendre en charge les liaisons pour n'importe quelle langue.
  • Test sur de vrais appareils mobiles : Playwright utilise un navigateur de bureau pour simuler des appareils mobiles.

Bien qu'il existe certaines limitations, Playwright a maintenant été mis à jour vers la version 1.7.0. Avec chaque génération de mises à jour, le système sera plus parfait. En tant qu'outil novice, il sauve tellement tout le monde que nous pensons que son avenir sera assuré. de mieux en mieux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

MySQL doit-il payer MySQL doit-il payer Apr 08, 2025 pm 05:36 PM

MySQL a une version communautaire gratuite et une version d'entreprise payante. La version communautaire peut être utilisée et modifiée gratuitement, mais le support est limité et convient aux applications avec des exigences de stabilité faibles et des capacités techniques solides. L'Enterprise Edition fournit une prise en charge commerciale complète pour les applications qui nécessitent une base de données stable, fiable et haute performance et disposées à payer pour le soutien. Les facteurs pris en compte lors du choix d'une version comprennent la criticité des applications, la budgétisation et les compétences techniques. Il n'y a pas d'option parfaite, seulement l'option la plus appropriée, et vous devez choisir soigneusement en fonction de la situation spécifique.

Comment utiliser MySQL après l'installation Comment utiliser MySQL après l'installation Apr 08, 2025 am 11:48 AM

L'article présente le fonctionnement de la base de données MySQL. Tout d'abord, vous devez installer un client MySQL, tel que MySQLWorkBench ou le client de ligne de commande. 1. Utilisez la commande MySQL-UROot-P pour vous connecter au serveur et connecter avec le mot de passe du compte racine; 2. Utilisez Createdatabase pour créer une base de données et utilisez Sélectionner une base de données; 3. Utilisez CreateTable pour créer une table, définissez des champs et des types de données; 4. Utilisez InsertInto pour insérer des données, remettre en question les données, mettre à jour les données par mise à jour et supprimer les données par Supprimer. Ce n'est qu'en maîtrisant ces étapes, en apprenant à faire face à des problèmes courants et à l'optimisation des performances de la base de données que vous pouvez utiliser efficacement MySQL.

Le fichier de téléchargement MySQL est endommagé et ne peut pas être installé. Réparer la solution Le fichier de téléchargement MySQL est endommagé et ne peut pas être installé. Réparer la solution Apr 08, 2025 am 11:21 AM

Le fichier de téléchargement mysql est corrompu, que dois-je faire? Hélas, si vous téléchargez MySQL, vous pouvez rencontrer la corruption des fichiers. Ce n'est vraiment pas facile ces jours-ci! Cet article expliquera comment résoudre ce problème afin que tout le monde puisse éviter les détours. Après l'avoir lu, vous pouvez non seulement réparer le package d'installation MySQL endommagé, mais aussi avoir une compréhension plus approfondie du processus de téléchargement et d'installation pour éviter de rester coincé à l'avenir. Parlons d'abord de la raison pour laquelle le téléchargement des fichiers est endommagé. Il y a de nombreuses raisons à cela. Les problèmes de réseau sont le coupable. L'interruption du processus de téléchargement et l'instabilité du réseau peut conduire à la corruption des fichiers. Il y a aussi le problème avec la source de téléchargement elle-même. Le fichier serveur lui-même est cassé, et bien sûr, il est également cassé si vous le téléchargez. De plus, la numérisation excessive "passionnée" de certains logiciels antivirus peut également entraîner une corruption des fichiers. Problème de diagnostic: déterminer si le fichier est vraiment corrompu

MySQL ne peut pas être installé après le téléchargement MySQL ne peut pas être installé après le téléchargement Apr 08, 2025 am 11:24 AM

Les principales raisons de la défaillance de l'installation de MySQL sont les suivantes: 1. Problèmes d'autorisation, vous devez s'exécuter en tant qu'administrateur ou utiliser la commande sudo; 2. Des dépendances sont manquantes et vous devez installer des packages de développement pertinents; 3. Conflits du port, vous devez fermer le programme qui occupe le port 3306 ou modifier le fichier de configuration; 4. Le package d'installation est corrompu, vous devez télécharger et vérifier l'intégrité; 5. La variable d'environnement est mal configurée et les variables d'environnement doivent être correctement configurées en fonction du système d'exploitation. Résolvez ces problèmes et vérifiez soigneusement chaque étape pour installer avec succès MySQL.

Solutions au service qui ne peuvent pas être démarrées après l'installation de MySQL Solutions au service qui ne peuvent pas être démarrées après l'installation de MySQL Apr 08, 2025 am 11:18 AM

MySQL a refusé de commencer? Ne paniquez pas, vérifions-le! De nombreux amis ont découvert que le service ne pouvait pas être démarré après avoir installé MySQL, et ils étaient si anxieux! Ne vous inquiétez pas, cet article vous emmènera pour le faire face calmement et découvrez le cerveau derrière! Après l'avoir lu, vous pouvez non seulement résoudre ce problème, mais aussi améliorer votre compréhension des services MySQL et vos idées de problèmes de dépannage, et devenir un administrateur de base de données plus puissant! Le service MySQL n'a pas réussi et il y a de nombreuses raisons, allant des erreurs de configuration simples aux problèmes système complexes. Commençons par les aspects les plus courants. Connaissances de base: une brève description du processus de démarrage du service MySQL Service Startup. Autrement dit, le système d'exploitation charge les fichiers liés à MySQL, puis démarre le démon mysql. Cela implique la configuration

Comment optimiser les performances MySQL pour les applications de haute charge? Comment optimiser les performances MySQL pour les applications de haute charge? Apr 08, 2025 pm 06:03 PM

Guide d'optimisation des performances de la base de données MySQL dans les applications à forte intensité de ressources, la base de données MySQL joue un rôle crucial et est responsable de la gestion des transactions massives. Cependant, à mesure que l'échelle de l'application se développe, les goulots d'étranglement des performances de la base de données deviennent souvent une contrainte. Cet article explorera une série de stratégies efficaces d'optimisation des performances MySQL pour garantir que votre application reste efficace et réactive dans des charges élevées. Nous combinerons des cas réels pour expliquer les technologies clés approfondies telles que l'indexation, l'optimisation des requêtes, la conception de la base de données et la mise en cache. 1. La conception de l'architecture de la base de données et l'architecture optimisée de la base de données sont la pierre angulaire de l'optimisation des performances MySQL. Voici quelques principes de base: sélectionner le bon type de données et sélectionner le plus petit type de données qui répond aux besoins peut non seulement économiser un espace de stockage, mais également améliorer la vitesse de traitement des données.

Comment optimiser les performances de la base de données après l'installation de MySQL Comment optimiser les performances de la base de données après l'installation de MySQL Apr 08, 2025 am 11:36 AM

L'optimisation des performances MySQL doit commencer à partir de trois aspects: configuration d'installation, indexation et optimisation des requêtes, surveillance et réglage. 1. Après l'installation, vous devez ajuster le fichier my.cnf en fonction de la configuration du serveur, tel que le paramètre innodb_buffer_pool_size, et fermer query_cache_size; 2. Créez un index approprié pour éviter les index excessifs et optimiser les instructions de requête, telles que l'utilisation de la commande Explication pour analyser le plan d'exécution; 3. Utilisez le propre outil de surveillance de MySQL (ShowProcessList, Showstatus) pour surveiller la santé de la base de données, et sauvegarde régulièrement et organisez la base de données. Ce n'est qu'en optimisant en continu ces étapes que les performances de la base de données MySQL peuvent être améliorées.

MySQL a-t-il besoin d'Internet MySQL a-t-il besoin d'Internet Apr 08, 2025 pm 02:18 PM

MySQL peut s'exécuter sans connexions réseau pour le stockage et la gestion des données de base. Cependant, la connexion réseau est requise pour l'interaction avec d'autres systèmes, l'accès à distance ou l'utilisation de fonctionnalités avancées telles que la réplication et le clustering. De plus, les mesures de sécurité (telles que les pare-feu), l'optimisation des performances (choisissez la bonne connexion réseau) et la sauvegarde des données sont essentielles pour se connecter à Internet.

See all articles