Selenium de reconocimiento de alimentos usando Caloriemama API

Selenium es una poderosa herramienta para controlar el navegador web a través de un programa. Es funcional para todos los navegadores, funciona en todos los principales sistemas operativos y sus scripts están escritos en varios lenguajes, es decir, Python, Java, C#, etc. Trabajaremos con Python.

En este artículo, vamos a ver cómo automatizar el sitio web de Caloriemama usando selenium. Solo vamos a publicar una imagen de comida en el caloriemamasitio web de API y mostrar el resultado que muestra en ese sitio.

Antes de entrar en el código, necesitamos instalar Selenium para Python.

pip install selenium

Controladores web
Selenium requiere un controlador web para interactuar con el navegador elegido. Los controladores web son un paquete para interactuar con el navegador web. Interactúa con el navegador web o un servidor web remoto a través de un protocolo de conexión común a todos. Puede comprobar e instalar los controladores web de su elección de navegador.

Chrome: https://sites.google.com/a/chromium.org/chromedriver/downloads
Firefox: https://github.com/mozilla/geckodriver/releases
Safari: https://webkit.org/blog/6900/webdriver-support-in-safari-10/

Módulos necesarios

  • selenium: para automatizar el navegador web
  • tiempo: para usar la función de suspensión porque el selenium solo funciona cuando se cargan todos los elementos de la página.
  • Enviaremos la imagen de la comida y obtendremos el resultado de la comida reconocida como texto. Consideremos que la imagen de la comida se ve así:

    food

    # food recognition using caloriemama API
    # selenium example
    from selenium import webdriver
    import time
       
    # create the variable for webdriver 
    browser = webdriver.Firefox(executable_path='/path/to/geckodriver'
       
    # it will open browser and
    # search for the below URL
       
    # find class name 'file-upload' 
    upload = browser.find_element_by_class_name('file-upload')
       
    # enter your image file
    # location here & send image
    upload.send_keys("/path/to/food.jpeg"
      
    time.sleep(5
       
    # return the value by class name
    get = browser.find_element_by_class_name('group-name')
       
    print(get.text) 
    # on the website, it will show many
    # results depend on the accuracy
    # first result is  high accuracy one
       
    # if need all the result put it in 
    # loop like below and change
    # 'find_element_by_class_name' 
    # to 'find_elements_by_class_name'
    # for got in get:
    # print(got.text, "\n") 
    # break 

    Producción:

Pizza

Publicación traducida automáticamente

Artículo escrito por praphakar119 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *