使用selenium想要点击并在类中定义URL
P粉904191507
P粉904191507 2024-04-04 14:14:44
0
1
3714

今天我需要另一个提示。 我正在尝试构建 Python/Selenium 代码,想法是单击 www.thewebsiteIwantoclickon 下面是我正在处理的 HTML 示例。

entity-result__title-text 在 HTML 中重复多次,因此我想为每个类 entity-result__title-text 单击元素 href= 打开网站 www.thewebsiteIwantoclickon 执行一些操作(我在单独的代码中)并返回到之前的 HTML 并重复相同的过程,直到最后一个类实体-结果__标题文本

<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>

我编写了以下代码,但没有执行任何操作。

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()

但是什么也没发生。

P粉904191507
P粉904191507

全部回复(1)
P粉966979765

要创建所需元素的列表,您必须为 visibility_of_all_elements_ located(),您可以使用以下任一定位器策略

  • 使用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")))
  • 使用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']")))
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板