Работа с перетаскиванием в питоне драматурга
Я пытаюсь реализовать функцию перетаскивания (я смог увидеть, что в отношении этого есть открытая проблема) с доступными в настоящее время действиями мыши, но пока не могу этого сделать. так что я ищу работу для этого, есть ли способ реализовать перетаскивание в питоне драматурга. ниже приведен код, который я пытаюсь использовать.
await page.mouse.move(472, 399)
await page.mouse.down()
await page.mouse.move(991, 313)
await page.mouse.up()
Спасибо
1 ответ
Я предполагаю, что в вашем случае перетаскивание HTML5 не работает.
К сожалению, на момент написания этой статьи текущий питон драматурга (1.10.x) не запускался.
dragstart
а также
drop
события через
mouse.down
,
mouse.move
а также
mouse.up
API.
Однако следующий код должен работать (с использованием sync_api),
# This element should have the draggable attribute value as true
src_elem = page.query_selector('div.foo')
# This element should be the element as the drop target
dest_elem = page.query_selector('div.bar')
# Create a data transfer JSHandle instance
data_transfer = page.evaluate_handle('() => new DataTransfer()')
src_elem.dispatch_event('dragstart', { 'dataTransfer': data_transfer })
dest_elem.dispatch_event('drop', { 'dataTransfer': data_transfer })
# Now check whether the dropped effect is achieved
dest_elem.wait_for_selector('ENTER SELECTOR AFTER DROP EFFECT')