2017-10-06 2 views
0

Comment obtenir tous les liens du DOM sauf d'un certain tag div ??Obtenir tous les liens de DOM sauf à partir d'un certain tag div selenium python

C'est le div Je ne veux pas les liens de:

<div id="yii-debug-toolbar"> 
    <div class="yii-debug-toolbar_bar"> 
    <div class="yii-debug-toolbar_block> 
    <a>...</a> 
    </div> 
    <div class="yii-debug-toolbar_block> 
     <a>...</a> 
    </div> 
    </div> 
</div> 

Je reçois les liens dans mon code LKE ceci:

links = driver.find_elements_by_xpath("//a[@href]") 

Mais je ne veux pas d'obtenir les de ce div, comment puis-je faire cela?

+0

Can u partager URL ou html et qui div vous ne vouliez, et comment vous vouliez – iamsankalp89

+0

la balise div est là-haut, je ne peux pas partager l'URL, et je pense que n'est pas nécessaire eiter, je viens Je veux savoir comment exclure des liens d'une certaine étiquette – Dori

+0

Faites-moi savoir si vous êtes toujours ouvert à considérer une réponse à travers 'Selenium'. – DebanjanB

Répondre

0

Je ne suis pas sûr s'il y a une manière simple de faire ceci avec juste des capacités de xeneniums de xpath. Cependant, une solution simple pourrait être d'analyser le HTML avec quelque chose comme BeautifulSoup, se débarrasser de tous les éléments <div id="yii-debug-toolbar">...</div>, puis sélectionnez les liens restants.

from bs4 import BeautifulSoup 
... 
soup = BeautifulSoup(wd.page_source) 
for div in soup.find_all("div", {'id':'yii-debug-toolbar'}): 
    div.decompose() 
soup.find_all('a', href=True)