En utilisant Selenium, vous voulez cliquer et définir une URL en classe
P粉904191507
P粉904191507 2024-04-04 14:14:44
0
1
3711

J'ai besoin d'un autre conseil aujourd'hui. J'essaie de créer du code Python/Selenium avec l'idée de cliquer sur www.thewebsiteIwantoclickon Vous trouverez ci-dessous un exemple du HTML sur lequel je travaille.

La

classe entity-result__title-text est répétée plusieurs fois en HTML, je souhaite donc effectuer une action pour chaque classe entity-result__title-text en cliquant sur l'élément href= pour ouvrir le site Web www. le site Web, je veux cliquer sur (je fais cela dans un code séparé) et revenir au code HTML précédent et répéter le même processus jusqu'au dernier cours entity-result__title text

<span class="entity-result__title-text
            t-16">
            <a class="app-aware-link " href="https://www.thewebsiteIwantoclickon" data- 
 test-app-aware-link="">
              <span dir="ltr"><span aria-hidden="true"><!---->Mi Name<!----></span><span class="visually-hidden"><!---->See something<!----></span></span>
            </a>
            <span class="entity-result__badge t-14 t-normal t-black--light">
              <div class="display-flex
        flex-row-reverse
        align-items-baseline">
    <!---->    <span class="image-text-lockup__text entity-result__badge-text">
          <span aria-hidden="true"><!---->• 2º<!----></span><span class="visually-hidden"><!---->example<!----></span>
         </span>
      </div>
            </span>
        </span>

J'ai écrit le code suivant mais il ne fait rien.

links = driver.find_elements(By.XPATH, "//span[@class='entity-result__title-text']/a[@class='app-aware-link']")
for link in links:
    href = link.get_attribute("href")
    link.click()
    # My Action done and I'm ready to close the website
    
    driver.back()

Mais rien ne s'est passé.

P粉904191507
P粉904191507

répondre à tous(1)
P粉966979765

Pour créer une liste d'éléments requis, vous devez être visibility_of_all_elements_ localisé(), vous pouvez utiliser l'une des stratégies de localisation suivantes :

  • Utilisez CSS_SELECTOR :

    links = WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.CSS_SELECTOR, "span.entity-result__title-text > a.app-aware-link")))
  • Utilisez XPATH :

    links = WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//span[contains(@class, 'entity-result__title-text ')]/a[@class='app-aware-link']")))
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal