User Tools

Site Tools


informatica:linux:selenium:ejemplos

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
informatica:linux:selenium:ejemplos [2020/05/01 08:20] joseinformatica:linux:selenium:ejemplos [2020/07/04 00:22] (current) jose
Line 42: Line 42:
 {{::selenium01.png|}} {{::selenium01.png|}}
  
-Queremos seleccionar el campo input de origen:+Queremos seleccionar el campo input de tipo text. Aquí nos podemos encontrar con varios problemas si el dom está mal hecho como es el caso sin id, puede haber mas de uno:
  
-  xpath = './/input[@id="IdOrigen"]'+  xpath = './/input[@type="text"]'
   o = driver.find_element_by_xpath(xpath)   o = driver.find_element_by_xpath(xpath)
  
Line 50: Line 50:
   print(o.get_attribute('outerHTML'))   print(o.get_attribute('outerHTML'))
  
-  <input type="text" id="IdOrigen" name="desOrigentab="0class="ui-autocomplete-inputautocomplete="off">+  <input type="text" name="keywordssize="30maxlength="30style="width: 124px">
  
 Ahora podemos enviar texto, hacer click.... Podemos borrar el contenido si suele tener algo: Ahora podemos enviar texto, hacer click.... Podemos borrar el contenido si suele tener algo:
   o.clear()   o.clear()
 Y enviamos lo que queramos Y enviamos lo que queramos
-  o.send_keys("BARCELONA")+  o.send_keys("omnitik")
 Volvemos a borrar contenido: Volvemos a borrar contenido:
   o.clear()   o.clear()
  
 ====== Click ====== ====== Click ======
 +Abajo a la derecha tenemos el botón de "Lo tengo!" para las cookies. inspeccionamos:
 +  <a href="#null" data-cc-event="click:dismiss" target="_blank" class="cc_btn cc_btn_accept_all">Lo tengo !</a>
  
 +Lo seleccionamos:
 +<code>
 +xpath = './/a[@data-cc-event="click:dismiss"]'
 +o = driver.find_element_by_xpath(xpath)
  
 +print(o.get_attribute('outerHTML'))
 +</code>
 +Hacemos click:
 +  o.click()
 +====== Lista desplegable ======
 +Abajo a la izquierda donde pone Euro
 +{{:informatica:linux:selenium:selenium02.png|}}
 +
 +Si pulsamos los 3 puntos ... nos saldrán los posibles valores como option:
 +{{:informatica:linux:selenium:selenium03.png|}}
 +
 +O si copiamos el código:
 +
 +  <select name="currency" onchange="this.form.submit();" style="width: 100%"><option value="ESP">Pesetas</option><option value="EUR" selected="">Euro</option></select>
 +
 +Vaya web he elegido que sale Pesetas.....
 +  
 +Para seleccionar una opción:
 +  xpath = "//select[@name='currency']/option[@value='ESP']"
 +  o = driver.find_element_by_xpath(xpath)
 +  o.click()
 +Podemos seleccionar por texto, pero cuidado con las webs multidioma:  
 +  xpath = "//select[@name='currency']/option[text()='Pesetas']"
 +  o = driver.find_element_by_xpath(xpath)
 +  o.click()
 +
 +====== Grabar todo el contenido de una web ======
 +<code>
 +content = driver.page_source
 +with open('webpage.html', 'w') as f:
 +    f.write(content)
 +</code>
informatica/linux/selenium/ejemplos.1588321251.txt.gz · Last modified: 2020/05/01 08:20 by jose