cliquer sur un lien via selenium en python

j'essaie de faire du webcraping via le sélénium. Ma question est très simple: Comment trouver un lien et ensuite comment cliquer dessus? Par exemple: ce qui suit est le code HTML que je suis en train de web-gratter:

<td bgcolor="#E7EFF9">
  <a href="javascript:selectDodasaDetdasdasy(220011643,'Kdasdası');" target="_self">
   Details
  </a>
</td>

Donc, comme vous pouvez le voir, le mot "Détail" est un lien.

Comment puis-je trouver ce lien En utilisant le sélénium et cliquer dessus?

21
demandé sur falsetru 2013-09-03 21:03:18

4 réponses

Vous pouvez utiliser find_element_by_link_text:

Par exemple:

link = driver.find_element_by_link_text('Details')

Cliquer sur elle, il suffit d'appeler la méthode click:

link.click()
39
répondu falsetru 2013-09-03 17:10:55

alors vous pouvez essayer quelque chose comme ça.


    for (int i=0; i&lttd.length(); i++){
        driver.find_element_by_xpath("(//a[contains(text(),'Details')])[i]").click()
        }

1
répondu Paras 2013-09-04 16:46:28

Vous pouvez essayer de cliquer le lien En utilisant XPath Localisateur par exemple,

link=driver.find_element_by_xpath(.//*[@id="content"]/div[3]/div/div/div[2]/h4)

link.click()
0
répondu Gayatri 2016-09-16 16:34:35

une chose manque à tout le monde. Ses une liste par la déclaration ci-dessous. Vous devez sélectionner un élément de cette liste.

pilote.find_element_by_link_text('Détails')

si vous cochez

for i in driver.find_element_by_link_text('Details')
    i.click()

BINGO : -)

0
répondu Mr. Bordoloi 2017-10-14 17:34:36