Ejemplo básico utilizando axe-devtools-api de Python
Not for use with personal data
El siguiente es un ejemplo mínimo de cómo probar la página usando axe-devtools-api y axe-devtools-selenium.
Prerrequisitos
- Python 3
- Enlace del controlador web de Selenium (es decir, chromedriver o geckodriver)
- Instale axe-devtools-api y axe-devtools-selenium a través de Agora o bundles
Código
Esto abre una página con violaciones de accesibilidad intencionales en una ventana de Chrome, ejecuta axe y luego imprime de forma legible los resultados.
from pprint import pprint
from selenium import webdriver
from axe_devtools_selenium import AxeDriver
from axe_devtools_api import Axe
page = webdriver.Chrome()
page.get("https://dequeuniversity.com/demo/mars/")
axe = Axe(AxeDriver(page))
results = axe.analyze()
pprint(results.__dict__)
Esto hace lo mismo, excepto que lanza una excepción si hay violaciones de a11y en lugar de imprimir resultados.
from pprint import pprint
from selenium import webdriver
from axe_devtools_selenium import AxeDriver
from axe_devtools_api import Axe
page = webdriver.Chrome()
page.get("https://dequeuniversity.com/demo/mars/")
axe = Axe(AxeDriver(page))
results = axe.analyze()
assert results.is_axe_clean(), results.violations_report()
Si desea hacer algo en la página antes de escanearla, consulte la [documentación] de Selenium(https://selenium-python.readthedocs.io/) o la documentación de la API.
Si desea utilizar Firefox, simplemente cambie a webdriver.Chrome()
Firefox webdriver.Firefox()
.