22.11.2020 14:21
aldemko
 
Добрый день.
Есть задача получить данные с сайта
на нем предварительно заданы параметры, нас интересует поле "partners", значения в нем надо поменять на (любую) страну, и нажать "get data".и сформируется таблица, которая нужна.

C Python и методами Selenium только знакомлюсь, получилось найти класс, отвечающий за поле, нажать на него и вызвать выпадающий список, в который, по идее надо добавить(сымитировать ввод) значение страны..

from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://comtrade.un.org/Data/")
choice0 = driver.find_element_by_id("s2id_partners")
choice0.click()

вот получилось нажать на список
нажать на итоговую кнопку (которая сформирует таблицу)тоже получается)


а внести значения - никак
например если

choice0.send_keys("All")
получаю ошибку
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable

(много прогуглено, везде ссылаются на то, что элемент не успел прогрузится,и надо ждать но не этот случай)

Возможно, чего то не понимаю в структуре,
в момент нажатия на поле partners и появления выпадающего списка она меняется (новые элементы) см pic1 и возможно искать надо в них,к чему обращаться и менять....

в общем, буду очень благодарна любой подсказке




Вообще цель - пройтись поочередно по всем сочетаниям reporters(ALL) - partners(выбранный)
так как сайт не дает выбрать all - all

список всех стран нашла в
уже разобрала на список
Миниатюры
Нажмите на изображение для увеличения
Название: pic1.png
Просмотров: 8
Размер:	166.1 Кб
ID:	11159  
22.11.2020 16:53
OlegON
 
Не думаю, что задача слишком сложная, но не уверен, что выбран правильный инструмент, я бы, наверное, прямо в браузере бы скрипт и писал... Например, так : https://olegon.ru/showthread.php?t=34790
В целом же список не предусматривает ввод данных буквами, он для выбора (select) из списка. Потому слать туда буквы действительно некуда.
22.11.2020 17:20
aldemko
 
Спасибо за предложение)

Да вот как раз ввести получилось,
нашла место, отвечающее за ввод...(pic3)

а вот удалить то, что внесено исходно, не получается пока.

Средствами python данная задача решена (поставившим мне ее, так что буду пробовать дальше)
Миниатюры
Нажмите на изображение для увеличения
Название: pic2.png
Просмотров: 7
Размер:	160.5 Кб
ID:	11160   Нажмите на изображение для увеличения
Название: pic3.png
Просмотров: 5
Размер:	142.2 Кб
ID:	11161  
22.11.2020 18:14
OlegON
 
Цитата:
aldemko вот удалить то, что внесено исходно, не получается
А рефреш страницы не помогает?

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.