Я нашел, что netlimiter4 является лучшим решением для дросселирования данных для эмуляторов. Он обеспечивает гранулированный контроль через приличный gui и дает вам графическую обратную связь по пропускной способности данных для каждого процесса. В настоящее время в бесплатной бета-версии. снимок экрана
http://www.netlimiter.com/products/nl4
В игровом магазине есть приложения для дросселя на реальных устройствах, но они требуют root (я не могу дать какие-либо рекомендации относительно того, насколько хорошо они работают, если вообще - YMMV.)
искать bradybound в магазине воспроизведения, я не могу опубликовать более одной ссылки ..
Вы получаете список webElements с driver.find_elements_by_xpath(".//*[@id='UserName']")
, который, конечно, не является одним элементом и не имеет метода send_keys()
. вместо этого используйте find_element_by_xpath
. См. этот api doc.
userID = driver.find_element_by_xpath(".//*[@id='UserName']")
userID.send_keys('username')
У меня была та же проблема, поэтому я просто сделал:
userID[0].send_keys('username')
Работал для меня
вместо этого:
userID = driver.find_elements_by_xpath(".//*[@id='UserName']")
userID.send_keys('username')
try:
userID = driver.find_element_by_xpath(".//*[@id='UserName']")
userID.send_keys('username')
У меня были те же проблемы, и это сработало для меня.
Эта ошибка возникает, когда вы пытаетесь выполнить действие над списком вместо элемента. Я получал схожую ошибку, когда я пытался нажать кнопку, чтобы отправить учетные данные. Я нашел работу вокруг, эмулируя нажатие клавиши ввода на клавиатуре. например найти любой элемент на странице с помощью xpath / css и т. д. и отправить ключ ввода. driver.find_element_by_id('test_id').send_keys(Keys.ENTER)