Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 硒:点击按钮_Python_Selenium - Fatal编程技术网

Python 硒:点击按钮

Python 硒:点击按钮,python,selenium,Python,Selenium,这是html-页面代码的一部分,我应该单击该按钮 <div class="add-company-form__form-control add-company-form__submit"> <button class="button button_theme_islands button_size_xl button_view_action button_type_submit button__control i-bem" data-bem='{"button":{}}

这是
html
-页面代码的一部分,我应该单击该按钮

<div class="add-company-form__form-control add-company-form__submit">
    <button class="button button_theme_islands button_size_xl button_view_action button_type_submit button__control i-bem" data-bem='{"button":{}}' role="button" type="submit">
        <span class="button__text">Добавить организацию</span>
    </button>
</div>
但它又回来了

NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//div[@class='add-company-form__submit']/button"}
如何修复此问题?

尝试以下Xpath

  WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@class='button button_theme_islands button_size_xl button_view_action button_type_submit button__control i-bem']")))
如果你想使用CssSelector,试试这个

   WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button.button_theme_islands")))

您应该尝试实例化WebDriver,然后单击按钮:

WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.elementToBeClickable(By.XPATH, "//button[@class='button button_theme_islands button_size_xl button_view_action button_type_submit button__control i-bem']"));
注:


我使用了Java语法,但它在Python中应该非常类似。

您可以共享url吗?@QHarr它在页面上不是唯一的,可能是它在iFrame中吗?问题是您的XPath不正确。您有
@class='add-company-form\uuu submit'
,但实际上该类有不止一个类名,
class=“add-company-form\uu form-control add-company-form\uu submit”
。您可以将其更改为
//div[@class='add-company-form\uuuu form-control add-company-form\uuu submit']/button
,甚至可能是
//span[.='Ббзбзбаа
WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.elementToBeClickable(By.XPATH, "//button[@class='button button_theme_islands button_size_xl button_view_action button_type_submit button__control i-bem']"));