Мне нужно перетащить мое приложение, и, основываясь на моих исследованиях, ключевое слово Drag and Drop Selenium2Library является вонючим, поэтому я прибегнул к drag_and_drop_helper.js .
Iпротестировал следующий код, и он работает:
# coding = utf-8
from selenium import webdriver
import os
from time import sleep
driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.get('http://the-internet.herokuapp.com/drag_and_drop')
with open(os.path.abspath('drag_and_drop_helper.js'), 'r') as js_file:
line = js_file.readline()
script = ''
while line:
script += line
line = js_file.readline()
driver.execute_script(script + "$('#column-a').simulateDragDrop({ dropTarget: '#column-b'});")
sleep(2)
driver.quit()
Однако, когда я настроил его, используя идентификатор объекта в моем приложении, эта строка возвращает «Синтаксическая ошибка: неожиданный токен.»
driver.execute_script(script + "$('#ContainerCard-Container-70940a34-4bdd-44c9-a7fe-cfb1951c0acf').simulateDragDrop({ dropTarget: '#OrganizationTree-Location-ac779a97-97f3-496e-8efc-72b9be77e77d'};)")
Я изменил только URL-адрес приложения и # column-a и # column-b по сравнению с исходным кодом, и он перестал работать, и я не мог понять, в чем дело, даже после долгих исследований об ошибке.Кто-нибудь сталкивался с этим раньше?