Python Selenium WebDriver drag-and-drop

Я не могу заставить drag-and drop работать с привязками Python WebDriver. Я работаю с Google Chrome и Firefox в Mac OS X. Здесь есть тема, где у кого-то была аналогичная проблема.

Я попытался использовать ActionsChains :

 from selenium import webdriver from selenium.webdriver import ActionChains driver = webdriver.Chrome() actionChains = ActionChains(driver) actionChains.drag_and_drop(source, target).perform() 

Удалось ли работать с перетаскиванием Python WebDriver?

3 Solutions collect form web for “Python Selenium WebDriver drag-and-drop”

Чтобы дать обновленный ответ, я подтвердил, что это фактически работает на Mac сейчас.

 from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains driver = webdriver.Firefox() driver.get("your.site.with.dragndrop.functionality.com") source_element = driver.find_element_by_name('your element to drag') dest_element = driver.find_element_by_name('element to drag to') ActionChains(driver).drag_and_drop(source_element, dest_element).perform() 

Справка

В настоящее время цепочки действий не работают на Mac. Если вы попробуете код выше в Linux или Windows, он будет работать. ChromeDriver близок к тому, чтобы получить это право, но все еще нуждается в работе AFAIK.

Трудно точно сказать, без какого-либо образца HTML для источника и цели.

Вы можете попробовать использовать drag_and_drop_by_offset(self, source, xoffset, yoffset) вместо этого с небольшим значением для параметров смещения. Иногда это срабатывает.

Вы также можете попытаться адаптировать этот пример C #, который вместо этого использует mouse_down_at , mouse_move_at и mouse_up_at .

  • Python Webdriver не загружает страницу в Windows
  • Многопоточность в selenium python
  • Попытка использовать Selenium 2 с привязками Python, но я получаю ошибку импорта
  • Нажатие ссылок JavaScript в Selenium WebDriver и Python
  • Нажмите на раскрывающееся меню с помощью Selenium Webdriver
  • Автоматизация действий браузера - нажатие на кнопки кнопки «Ошибка» - «Нажмите« Успешно », но« Ошибка загрузки ». ..»
  • Поддерживает ли Webdriver pagefactory для Python?
  • Как навести указатель мыши на python Webdriver
  • Python - лучший язык программирования в мире.