在 python 中自动重定向之前使用 selenium 捕获源

Catching source with selenium before automatic redirect in python

考虑以下页面: https://www.cvs.com/shop/advil-pain-reliever-fever-reducer-ibuprofen-tablets-200mg-prodid-1040240?skuid=420321

选择其他格式(如 100 CT)时,会显示新价格。复制 URL 并导航到它,注意它重定向回原来的 10 CT 页面。

我想知道 100 CT 页面上的价格。

这是我的代码,它点击了正确的格式,但是当我尝试重新获取 url 时,我仍然得到 10 CT 页面。

    format_header =  browser.find_element_by_css_selector("ul.--horizontalScroll.gbcvs-c-variantSelectorList")
    items = format_header.find_elements_by_tag_name('li')

    format_count = 1
    for item in items:
        text = item.text
        if(text == '100 CT'):
            break
        else: 
            format_count += 1

    browser.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Count:'])[1]/following::label["+str(format_count)+"]").click()

    print(browser.current_url)

    browser.get(browser.current_url)

这是 运行 并正确找到价格的代码。 您可以使用 print (driver.find_element_by_css_selector("p.shoppdp-c-productPricing__actual").text) 获取价格

这里是wait_until_element_not_present

的方法代码
def wait_until_element_not_present(locator_type,locator):
    if locator_type == 'xpath':
        WebDriverWait(driver, 10).until_not(EC.presence_of_element_located((By.XPATH, locator)))
    elif locator_type == "css":
        WebDriverWait(driver, 10).until_not(EC.presence_of_element_located((By.CSS_SELECTOR, locator)))

@supputuri 的回答是正确的,只是我把wait_until_element_not_present换成了下面的

    WebDriverWait(driver, 10).until(
    EC.presence_of_element_located((By.CLASS_NAME, "gbcvs-c-addToCart__inner"))
    )