Py学习  »  Python

如何循环python操作直到按钮可点击(selenium)

David • 1 年前 • 847 次点击  

我在编码方面没有太多经验,我在这里的所有工作都是通过研究完成的。

我正在创建一个python脚本,它可以帮助我通过selenium向购物篮添加一张票,但遇到一些事情我不知道该怎么做。

票务网站需要坐下来刷新页面,直到另一个用户可以买到票,然后一个按钮可以点击,然后你就可以预订了。

我已经创建了脚本的第一部分,当它可用时,它会打开并链接并单击按钮,但当它不可用时,我需要页面刷新并尝试单击按钮(如果可用),然后重复,直到希望成功,脚本才能停止。

当一个票证被添加到购物篮中时,URL会发生变化,这可能是脚本在停止之前进行检查的条件。

下面是python代码,其中包含按钮不可点击的URL链接。

要测试脚本工作,请将URL更改为: https://ticketing.liverpoolfc.com/en-GB/events/liverpool%20women%20v%20everton%20women/2022-9-25_18.45/anfield?hallmap

需要点击的按钮是为我选择座位

from selenium.webdriver.common.keys import Keys
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

PATH = "D:\chromedriver.exe"

driver = webdriver.Chrome(PATH)

driver.get("https://ticketing.liverpoolfc.com/en-GB/events/liverpool%20v%20newcastle%20united/2022-8-31_20.00/anfield?hallmap")


try:
    element = WebDriverWait(driver, 25).until(
        EC.element_to_be_clickable((By.XPATH,"/html/body/div[7]/div/button"))
    )
finally:
    print("Page loaded")

button = driver.find_element(By.XPATH, "/html/body/div[7]/div/div[4]/div[1]/div[3]/div[2]/div[2]/div/div[3]/div[1]/button[2]")
button.click()```




Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/159725
 
847 次点击  
文章 [ 3 ]  |  最新文章 1 年前