2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 22:04 


11/04/19
3
Доброго времени суток, уважаемые! Подскажите пожалуйста, в какую сторону мне смотреть, что читать и учить?
Задача такова: нужно написать программу/скрипт (который я смогу дать другому человеку) для автозаполнения анкеты. Понимаю, что задача элементарная, но моих знаний мало. Из-за политических соображений компании, не могу дать ссылку на анкету, постараюсь максимально отобразить её здесь. Анкета находится на веб-странице
1. Вопрос с двумя вариантами ответа, выбирается только один.
2. Тот же тип, но 5 вариантов ответа.
3. 5 вариантов ответа, можно выбрать несколько
4. 2 варианта, на выбор только один
5. 4 варианта. Если выбрать 3 вариант, открывается 6 вопрос. Если выбрать 1,2 или 4, то 6й вопрос неактивен.
6. Активируется, если в 5м вопросе выбрать 3й вариант ответа.
7. 4 варианта, выбирается только один
8. То же на выбор только один
9. То же самое
10. То же самое
11. То же самое
12. То же самое
13. То же самое
14. 2 варианта, если выбрать первый, открывается 15 вопрос
15. Открывается, если выбрать первый вариант в 14 вопросе.
16. Таблица 5х2
Слева вопрос, справа нужно ввести число от 1 до 5
17. Вопрос с 1 вариантом ответа
18. То же самое
19. То же самое
Дальше самое интересное
поле для ввода имени (постоянная переменная, но если дать скрипт другому человеку, он должен ввести другое имя)
поле с id человека (то же самое, что и с именем)
Поле для выбора города, с всплывающим списком (то есть если я ввожу "Мо" он выдает "Москва")
еще 2 поля с таким же принципом
и еще 1 поле с вводом, но значения должны быть разные. то есть задать значение от 1 до 250, и чтоб при каждом заполнении он вводил новое число из этого диапазона, числа не должны повторятся.

Надеюсь дал максимум информации. Готового решения я не прошу, подскажите какую матчасть мне читать. Буду очень благодарен любому совету!
Заранее большое спасибо!

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 22:16 
Заслуженный участник


06/07/11
5627
кран.набрать.грамота
aaaaaagrrrrrr в сообщении #1387178 писал(а):
Надеюсь дал максимум информации.
Нет, конечно :wink: То, что анкета расположена на веб-странице по общедоступному адресу, нужно догадаться самостоятельно? (Потому что если она там НЕ расположена, или это какой-нибудь файл в формате word/excel/PDF/что-то еще, это ж совсем другое дело).

aaaaaagrrrrrr в сообщении #1387178 писал(а):
Готового решения я не прошу, подскажите какую матчасть мне читать.
1. HTML
2. CSS селекторы или xPath (любое из двух)
3. Библиотека Selenium и любой из языков для работы с ней (java, C#, python, Ruby, Javascript/Node.js), или curl, или java + jsoup.

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 22:23 
Заслуженный участник


27/04/09
28128
+ инспектор браузера, чтобы знать, что там чему соответствует в коде.

Про сомнительность затеи напишет кто-нибудь другой.

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 22:25 


11/04/19
3
rockclimber в сообщении #1387179 писал(а):
Нет, конечно :wink: То, что анкета расположена на веб-странице по общедоступному адресу, нужно догадаться самостоятельно?

Извиняюсь, поправил. На веб-странице
rockclimber в сообщении #1387179 писал(а):
1. HTML
2. CSS селекторы или xPath (любое из двух)
3. Библиотека Selenium и любой из языков для работы с ней (java, C#, python, Ruby, Javascript/Node.js), или curl, или java jsoup.

Может мне начать с самого простого, рандомных ответов на вопросы по типу 1го

-- 11.04.2019, 22:27 --

arseniiv в сообщении #1387180 писал(а):
Про сомнительность затеи напишет кто-нибудь другой.

Почему она сомнительная? :-(

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 22:31 
Заслуженный участник


06/07/11
5627
кран.набрать.грамота
aaaaaagrrrrrr в сообщении #1387182 писал(а):
Может мне начать с самого простого, рандомных ответов на вопросы по типу 1го
В ответ на это я могу только процитировать несколько пошловатый анекдот (но пожалуй не буду).
Даже если нужно только 1 раз автоматически открыть страницу и нажать на ней кнопку, всё вышеперечисленное всё равно в какой-то степени понадобится изучить.

-- 11.04.2019, 20:34 --

arseniiv в сообщении #1387180 писал(а):
+ инспектор браузера, чтобы знать, что там чему соответствует в коде.
Ох, на фоне всего остального это такая мелочь... На первых порах достаточно последовательности "правый клик - исследовать элемент - правый клик на узле - копировать CSS-селектор".

-- 11.04.2019, 20:35 --

aaaaaagrrrrrr в сообщении #1387182 писал(а):
Почему она сомнительная?
Возможно, имелась в виду моральная сторона вопроса. Но этому вас пусть мама учит, они для того и нужны.

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 22:42 
Заслуженный участник


27/04/09
28128
Не только моральная. Например там может быть более удобоваримый API для посылки результатов. Скажем даже если это просто обычный запрос POST (как в старину; но я не в курсе, посылаются ли сейчас формы подобным образом или другие способы чем-то лучше). Менять состояние элементов в DOM с хорошим современным фреймворком, наверно, красиво и просто, но посылать один текстовый запрос может быть ещё красивее и проще. :roll:

rockclimber в сообщении #1387183 писал(а):
На первых порах достаточно последовательности "правый клик - исследовать элемент - правый клик на узле - копировать CSS-селектор".
А, ну да, забыл про меню.

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 22:59 


11/04/19
3
rockclimber в сообщении #1387183 писал(а):
На первых порах достаточно последовательности "правый клик - исследовать элемент - правый клик на узле - копировать CSS-селектор".

xPath мне показался более понятным.
Первые два это селекторы
а в xPath по крайней мере понятно, div[1]-номер вопроса, далее варианты ответа.
в общем "на первых порах" выполнено :lol:, какие дальнейшие действия?
Код:
#myForm > div.questions > div:nth-child(2) > div > div > label.mr30
#myForm > div.questions > div:nth-child(2) > div > div > label:nth-child(4)

//*[@id="myForm"]/div[2]/div[1]/div/div/label[1]
//*[@id="myForm"]/div[2]/div[1]/div/div/label[2]

//*[@id="myForm"]/div[2]/div[2]/div/div/p[1]/label
//*[@id="myForm"]/div[2]/div[2]/div/div/p[2]/label
//*[@id="myForm"]/div[2]/div[2]/div/div/p[3]/label
//*[@id="myForm"]/div[2]/div[2]/div/div/p[4]/label
//*[@id="myForm"]/div[2]/div[2]/div/div/p[5]/label

//*[@id="myForm"]/div[2]/div[3]/div/div/div[1]/p[1]/label

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение11.04.2019, 23:09 
Заслуженный участник


06/07/11
5627
кран.набрать.грамота
aaaaaagrrrrrr в сообщении #1387188 писал(а):
какие дальнейшие действия?
Так я же писал уже выше. Примеров в сети вагон, google.com -> "java selenium tutorial".
Если вы программировать не умеете вообще, придется сначала научиться.
Как это сделать без программирования, я не знаю.

 Профиль  
                  
 
 Re: Автозаполнение анкет с рандомными вариантами ответов
Сообщение12.04.2019, 09:41 


15/11/15
916
rockclimber в сообщении #1387183 писал(а):
arseniiv в сообщении #1387180 писал(а):
+ инспектор браузера, чтобы знать, что там чему соответствует в коде.
Ох, на фоне всего остального это такая мелочь... На первых порах достаточно последовательности "правый клик - исследовать элемент - правый клик на узле - копировать CSS-селектор".

Дык, разве вы не об одном и том же говорите?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group