簡體   English   中英

python splinter無法單擊頁面上的css元素

[英]Python splinter cant click on element by css on page

我正在嘗試使用碎片自動在旅游網站上進行預訂,並且在單擊頁面上的CSS元素時遇到麻煩。

這是我的代碼

import splinter
import time

secret_deals_email = {
    'user[email]': 'adf@sad.com'
}

browser = splinter.Browser()
url = 'http://roomer-qa-1.herokuapp.com'
browser.visit(url)
click_FIND_ROOMS = browser.find_by_css('.blue-btn').first.click()
time.sleep(10)
# click_Book_button = browser.find_by_css('.book-button-row.blue-btn').first.click()
browser.fill_form(secret_deals_email)
click_get_secret_deals = browser.find_by_name('button').first.click()
time.sleep(10)
click_book_first_room_list = browser.find_by_css('.book-button-row-link').first.click()
time.sleep(5)
click_book_button_entry = browser.find_by_css('.entry-white-box.entry_box_no_refund').first.click()

問題是,每當我運行它時,代碼就會到達需要單擊所需購買類型的頁面。 我無法單擊頁面上的任何選項。

無論我該怎么辦,我都會不斷發現該元素不存在的錯誤。

http://roomer-qa-1.herokuapp.com/hotels/atlanta-hotels/ramada-plaza-atlanta-downtown-capitol-park.h30129/44389932?rate_plan_id=1&rate_plan_token=6b5aad6e9b357a3d9ff4b31acb73c620&

這是導致我麻煩的頁面的鏈接,請幫助:)。

您需要花時間,直到該元素出現在網站上。 您可以將is_element_not_present_by_css方法與while循環結合使用來實現

while not(is_element_not_present_by_css('.entry-white-box.entry_box_no_refund')):
  time.sleep(50)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM