社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

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

David • 1 年前 • 839 次点击  

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

我正在创建一个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
 
839 次点击  
文章 [ 3 ]  |  最新文章 1 年前