如何使用Selenuim Python单击播放按钮

发布于 2025-01-23 21:02:15 字数 697 浏览 0 评论 0 原文

我正在尝试单击此网站

我的代码下面

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.common.exceptions import NoSuchElementException
import time

browser = webdriver.Chrome()
browser.get("https://audiomack.com/iamrealtraffic")
time.sleep(10)
a = driver.find_element_by_xpath('//path[@d="M70.79 103c-.988 0-1.79-.802-1.79-1.79V69.866c0-.99.802-1.79 1.79-1.79l29.104 16.118s1.344 1.343 0 2.686C98.55 88.225 70.79 103 70.79 103"]')
webdriver.ActionChains(browser).move_to_element(a).click(a).perform()

I'm trying to click the play button on this website

Here is my code below

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.common.exceptions import NoSuchElementException
import time

browser = webdriver.Chrome()
browser.get("https://audiomack.com/iamrealtraffic")
time.sleep(10)
a = driver.find_element_by_xpath('//path[@d="M70.79 103c-.988 0-1.79-.802-1.79-1.79V69.866c0-.99.802-1.79 1.79-1.79l29.104 16.118s1.344 1.343 0 2.686C98.55 88.225 70.79 103 70.79 103"]')
webdriver.ActionChains(browser).move_to_element(a).click(a).perform()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

云仙小弟 2025-01-30 21:02:15

您确定您有正确的XPath吗?
我会尝试此xpath:

/html/hody/div [2]/div [3]/div/div/div [2]/div [1]/div/div/div/div/div/div/div/div/div [2]/div/div/ div/span [1]/按钮

我也将使用隐式任务而不是时间。

Are you sure you have the right xpath?
I would try this xpath:

/html/body/div[2]/div[3]/div/div[2]/div[1]/div/div/div/div/div/div[2]/div/div/span[1]/button

Also I would use implicitlywait instead of time.sleep.

旧梦荧光笔 2025-01-30 21:02:15

要单击 play 图标,您需要诱导 webdriverwait 用于 emellate_to_be_be_clickable() ,您可以使用以下任何一个 loc> loc> loc> loc>

  • 使用 css_selector :::

     驱动程序。
    WebDriverWait(驱动程序,20).until(ec.element_to_be_clickable(((by.css_selector
     
  • 使用 xpath

     驱动程序。
    webdriverwait(驱动程序,20).until(ec.element_to_be_clickable(((by.xpath,“ // div [@class ='row'] // button [@data-action-action ='play']”))。 )
     
  • 注意:您必须添加以下导入:

     来自selenium.webdriver.support.ui导入webdriverwait
    从selenium.webdriver.common.通过进口
    从selenium.webdriver.support进口预期_conditions作为ec
     

To click on the play icon you need to induce WebDriverWait for the element_to_be_clickable() and you can use either of the following locator strategies:

  • Using CSS_SELECTOR:

    driver.get("https://audiomack.com/black-sherif/song/kweku-the-traveler")
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.row button[data-action='play']"))).click()
    
  • Using XPATH:

    driver.get("https://audiomack.com/black-sherif/song/kweku-the-traveler")
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='row']//button[@data-action='play']"))).click()
    
  • Note: You have to add the following imports :

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文