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