Sélénium exécuter en utilisant des paramètres et des valeurs de retour de script Javascript

Sélénium peut être utilisé dans drvier.execute_script () pour exécuter des supports de script Javascript instructions sur plusieurs lignes.
Javascript peut être réalisé en utilisant les fonctions suivantes:

  • Supprimer des éléments cacher, désactiver, en lecture seule restrictions d'attributs
  • Ajoutez l'ID de l'élément ou le style de surbrillance
  • défilement page
  • zone de saisie de texte enrichi (injection HTML)
  • Obtenir page d'information

Utiliser les paramètres Javascript

En utilisation déclaration Javascript, d'autres paramètres peuvent être transmises dynamiquement des objets ou des éléments, espace réservé Javascript utilisé dans l ' « argument [n] » déclaration désigne pour prendre les premiers paramètres, tels que:

js = "arguments[0].setAttribute('style', arguments[1]);"

Voici deux paramètres enterrés, un élément de l'objet, l'autre est une chaîne de motif.

element = driver.find_element_by_id("kw")
style = "background: red; border: 2px solid yellow;"

Lors de l'exécution de script, pour les paramètres de portage:

driver.execute_script(js, element, style)

JavaScript obtenir la valeur de retour

De plus retourner les mots énoncés Javascript, comme l'accès à la hauteur de la page:

js = 'return document.documentElement.scrollHeight;'

L'exécution peut obtenir après sa valeur de retour:

page_height = driver.execute_script(js)

exemple complet

import time
from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')

js = 'arguments[0].setAttribute("style", arguments[1]);'
element = driver.find_element('id', 'kw')
style = 'background: red; border: 2px solid yellow;'
driver.execute_script(js, element, style)

page_height = driver.execute_script('return document.documentElement.scrollHeight;')
print(page_height)

time.sleep(3)
driver.quit()

Exécuter les résultats présentés à la figure:

Imprimer Résultats:

890

Je suppose que tu aimes

Origine www.cnblogs.com/superhin/p/12604080.html
conseillé
Classement