JavaScript — написать автозаполнение и отправить программу веб-формы

Я пытаюсь написать программу, которая может автоматически заполнять и отправлять форму в Интернете в определенный промежуток времени.

Но я понятия не имею, как и с чего начать. Я искал это в Google, но только в результате очень общий ответ, как с использованием JavaScript, Python. Может кто-нибудь сказать мне, какие языки я должен изучать в первую очередь?

0

Решение

Несмотря на то, что общий совет по этой теме довольно хорош, он довольно широк. Я сам решил эту проблему, и, несмотря на то, что я опубликовал полнофункциональный пример, он был удален модератором, несмотря на «теоретический ответ на вопросы».

Таким образом, для всех, кто хочет решить эту проблему, вам нужно сделать следующее:
Используйте Selenium и openpyxl, это два относительно простых модуля, которые отлично справятся с этой задачей.

Вы будете использовать селен, чтобы открыть свою веб-страницу и получить соответствующие HTML-элементы, которые вы хотите заполнить. Я предлагаю найти элементы по xPath, если вы плохо разбираетесь в HTML. Xpath Finder Google Chrome аддон сделает это очень легко сделать.

Driver.get () и driver.find_element_by_xpath () будут те функции, которые вам нужны.

Мы будем использовать openpyxl для работы с нашим листом Excel. load_workbook () загрузит рабочую книгу. Затем мы будем использовать функцию «sheet = workbook.active» для доступа к листу из рабочей книги.

Теперь у нас есть функциональность, чтобы открыть наш сайт и выбрать лист Excel.

Теперь нам нужно присвоить значения ячеек переменным, чтобы мы могли затем заполнить форму HTML. Мы присваиваем переменную каждому столбцу в рабочей книге. Таким образом, если столбец A содержал first_names, мы могли бы присвоить это переменной, написав ‘FNAME = sheet [‘ A ‘]. Теперь, когда у нас есть способ ссылки на ячейки внутри столбцов, мы можем начать подачу данных в нашу HTML-форму.

Мы заполняем нашу форму с помощью функции .send_keys () в Selenium.

first_name.send_keys(FNAME.value)

.value гарантирует, что отображается правильное значение, так как иногда селен будет печатать функцию ячейки, а не значение, мы не хотим, чтобы это произошло.

Теперь, когда мы можем печатать значения в наши HTML-формы из нашего листа Excel, нам нужно будет перебирать каждую строку. Мы делаем это с помощью простого цикла while:

i = 1
x = 1
while x <= 50:
first_name.send_keys(FNAME[i].value)
i+=1
x+=1
driver.quit

Когда цикл повторяется 50 раз, драйвер завершит работу, закрыв браузер и остановив скрипт.

Некоторые другие полезные вещи, которые вы можете найти полезными при попытке автоматизировать это:

driver.back()

time.sleep()

Если вы хотите увидеть реальный рабочий пример, не стесняйтесь писать мне в личку, так как его публикация здесь не способствует обсуждению.

2

Другие решения

Ответы, которые вы нашли, в общем и целом, правильные. Я постараюсь объяснить это вам.

Когда вы пытаетесь автоматизировать какую-то деятельность, вы должны использовать скриптовый язык в основном

  1. Получить ссылки на вещи (например, получить индексы, идентификаторы форм / полей и т. Д.)
  2. Вставить / изменить материал (например, заполнить поле, следуя ссылкам на поля)
  3. Сохраните материал (подготовьте файл со ссылками на поля и его содержимым, который можно вставить в конкретную систему или веб-сайт)

Одним из примеров языка сценариев является питон.

Итак, у вас уже есть свой сценарий. Теперь вам нужно добавить его на страницу. Язык программирования, который может сделать это для вас Javascript, или JS. Это позволяет вам общаться с веб-страницей, получать данные / ссылки или данные POSTing.

0

Я предлагаю вам написать питон скрипт с использованием библиотеки под названием Selenium Webdriver.

Будет легко реализовать то, что вы имеете в виду.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector