IngresarRegistrarme

Rocketbot Forum

Rocketbot Forum Logo Rocketbot Forum Logo

Rocketbot Forum Navigation

  • Academy Rocketbot
  • Tutoriales
  • Documentación
Search
Realiza una Pregunta

Mobile menu

Close
  • Home
  • Popular
  • Categorías
  • Tags
  • Preguntas
    • Nuevas Preguntas
    • Más votadas
    • Más visitadas
    • Más respondidas
  • Academy Rocketbot
  • Tutoriales
  • Documentación

rcocchiararo

Ask rcocchiararo
0 Followers
1 Pregunta
  • About
  • Questions
  • Questions
  • Questions
  • Questions
  • Polls
  • Polls
  • Polls
  • Polls
  • Answers
  • Answers
  • Answers
  • Answers
  • Best Answers
  • Best Answers
  • Best Answers
  • Best Answers
  • Followed
  • Followed
  • Followed
  • Followed
  • Favorites
  • Favorites
  • Favorites
  • Favorites
  • Groups
  • Groups
  • Groups
  • Groups
  1. Asked: septiembre 25, 2023En: Addons

    Acceder a shadow-root / shadow-dom

    rcocchiararo
    rcocchiararo
    Replied to answer on septiembre 26, 2023 at 8:36 pm

    Y ya repasando los videos vi que era super facil usar variables. No logro imigar la instrucción para contar elementos de las 2 tablas que debo recorrer (x estar en un shadowroot imagino que es muy diferente), pero por ahora me manejaré con tamaños fijos que levantaré de un archivo, y ya pude con estRead more

    Y ya repasando los videos vi que era super facil usar variables. No logro imigar la instrucción para contar elementos de las 2 tablas que debo recorrer (x estar en un shadowroot imagino que es muy diferente), pero por ahora me manejaré con tamaños fijos que levantaré de un archivo, y ya pude con esta tarea XD

    See less
      • 0
    • Compartir
      Compartir
      • Compartir en Facebook
      • Compartir en Twitter
      • Compartir en LinkedIn
      • Compartir en WhatsApp
  2. Asked: septiembre 25, 2023En: Addons

    Acceder a shadow-root / shadow-dom

    rcocchiararo
    rcocchiararo
    Added an answer on septiembre 26, 2023 at 8:09 pm

    Bueno, ya con Run JS pude extraer texto, ineractuar, etc. Ahora tengo que ver si/como podría usar variables en la generación del código JS que quiero correr para no tener que poner 14 x 2 líneas (tengo una tabla de 14 filas y tengo que extraer el texto de 2 columnas de cada fila :P )

    Bueno, ya con Run JS pude extraer texto, ineractuar, etc.

    Ahora tengo que ver si/como podría usar variables en la generación del código JS que quiero correr para no tener que poner 14 x 2 líneas (tengo una tabla de 14 filas y tengo que extraer el texto de 2 columnas de cada fila 😛 )

    See less
      • 0
    • Compartir
      Compartir
      • Compartir en Facebook
      • Compartir en Twitter
      • Compartir en LinkedIn
      • Compartir en WhatsApp
  3. Asked: septiembre 25, 2023En: Addons

    Acceder a shadow-root / shadow-dom

    rcocchiararo
    rcocchiararo
    Replied to answer on septiembre 26, 2023 at 12:58 pm

    No se xq mi repsuesta de mas arriba quedó en mi post original, se ve que toqué algo mal. Leyendo tu mensaje, dudo si tengo que descartar la parte python al no haber iframe e ir directo a lo siguiente que es JS, o igual necesito hacer funcionar lo de arriba?.

    No se xq mi repsuesta de mas arriba quedó en mi post original, se ve que toqué algo mal. Leyendo tu mensaje, dudo si tengo que descartar la parte python al no haber iframe e ir directo a lo siguiente que es JS, o igual necesito hacer funcionar lo de arriba?.

    See less
      • 0
    • Compartir
      Compartir
      • Compartir en Facebook
      • Compartir en Twitter
      • Compartir en LinkedIn
      • Compartir en WhatsApp
  4. Asked: septiembre 25, 2023En: Addons

    Acceder a shadow-root / shadow-dom

    rcocchiararo
    rcocchiararo
    Replied to answer on septiembre 26, 2023 at 12:47 pm

    Ya vi que el manual es el últmo. En mi caso el elemento inmediato previo al Shadow-root es: <div class="mds-accounts-table-container"> Dentro tiene: <mds-data-table-for-accounts id="accountsTableAG1Table0" ...blablba.... El código a usar: from selenium.webdriver.remote.webelement import WebRead more

    Ya vi que el manual es el últmo.

    En mi caso el elemento inmediato previo al Shadow-root es:

    <div class=»mds-accounts-table-container»>

    Dentro tiene:

    <mds-data-table-for-accounts id=»accountsTableAG1Table0″ …blablba….

    El código a usar:

    from selenium.webdriver.remote.webelement import WebElement
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    webdriver = GetGlobals(«web»)
    if webdriver.driver_actual_id in webdriver.driver_list:
    driver = webdriver.driver_list[webdriver.driver_actual_id]

    # Primero seleccionas el padre del primer shadow-root
    shadow_host = driver.find_element(By.CSS_SELECTOR, ‘mds-data-table-for-accounts’)
    # Estas siguientes tres líneas son siempre igual
    shadow_root_dict = driver.execute_script(‘return arguments[0].shadowRoot’,shadow_host)
    shadow_root_id = shadow_root_dict[‘shadow-6066-11e4-a52e-4f735466cecf’]
    shadow_root = WebElement(driver, shadow_root_id, w3c=True)
    # Cuando ingresas al ultimo shadow-root, solo debes obtener el elemento que corresponda con el iframe al que debes ingresar
    #shadow_content = shadow_root.find_element(By.CSS_SELECTOR, ‘row-header-row0-column0’)
    # Y para finalizar, utilizas el comando que cambia al iframe
    #driver.switch_to_frame(shadow_content)

    Entre el manual y google lo probé así con «By.CSS_SELECTOR» o «By.ID» (como dice el manual).
    En el caso de usar ID tenía que usar el ID dentro de la tabla.
    Con CSS_Selector puedo usar lo que esta antes del ID. (no enconre como hacer «By.Class, o sea, usando la clase del DIV).

    En todos los casos, la línea «shadow_root = WebElement(driver, shadow_root_id, w3c=True)» arroja «‘ShadowRoot’ object is not subscriptable.

    Vale aclarar que se programar, pero no uso python con frecuencia.

    Google y chatGPT mediante, probe diferentes cosas, pero n ose si estoy fallando yo o me faltan las instrucciones correctas para seleccionar «cosas» dentro del shadow root (ahí siempre me daban errores).

    DUDA: para trabajar en este tipo de sitios, tengo que hacerlo todo por código, o se puede ejecutar algo que al terminar me deja posicionado dentro del shadow root de modo que pueda hacer click y extraer texto con funciones normales?

    See less
      • 0
    • Compartir
      Compartir
      • Compartir en Facebook
      • Compartir en Twitter
      • Compartir en LinkedIn
      • Compartir en WhatsApp
  5. Asked: septiembre 25, 2023En: Addons

    Acceder a shadow-root / shadow-dom

    rcocchiararo
    rcocchiararo
    Replied to answer on septiembre 26, 2023 at 12:20 pm

    vi el manual, pero el código que tiene es aparentemente de antes de selenium 4.1 y de antes de chrome 96, o eso me pareció. Salvo que haya uno mas nuevo y no lo este yo encontrando?

    vi el manual, pero el código que tiene es aparentemente de antes de selenium 4.1 y de antes de chrome 96, o eso me pareció.

    Salvo que haya uno mas nuevo y no lo este yo encontrando?

    See less
      • 0
    • Compartir
      Compartir
      • Compartir en Facebook
      • Compartir en Twitter
      • Compartir en LinkedIn
      • Compartir en WhatsApp

Sidebar

Realizar Pregunta

Stats

  • Preguntas : 1k
  • Respuestas : 2k
  • Posts : 0
  • Comentarios : 0
  • Mejores Respuestas : 163
  • Usuarios : 5k
  • Populares
  • Comentarios
  • Tags

Users

Explore

  • Home
  • Popular
  • Categorías
  • Tags
  • Preguntas
    • Nuevas Preguntas
    • Más votadas
    • Más visitadas
    • Más respondidas

Footer

rocketbot white

Rocketbot SpA | Todos los derechos reservados 2018 - 2020

© 2020 Discy. All Rights Reserved
With Love by 2code.

es_ES
en_US es_ES