Форум сайта python.su
0
Задача такова:
Есть несколько сайтов, на сайтах есть формы и кнопка \отправить\. Мне нужно из текстового файла на каждый из этих сайтов в каждую форму отправить первую строку из текстового файла и “нажать” кнопку \отравить\. Потом вторую строку для каждого сайта и т.д. Желательно не открывая все это дело в браузере и не создавая множество окон.
В принципе ничего сложного. Но у меня ровно ноль знаний об html, запросах get\post и т.д. Я слабо представляю как это все происходит. Наткнулся на библиотеку urllib. Мне показалось что она подходит для этой задачи. Столкнулся с тем что 99% уроков и литературы по urllib описывает процесс парсинга и последующего анализа данных, что для моей задачи не подходит.
Что мне нужно изучить для выполнения задачи? Может посоветуете материалы какие по urllib? Или я не в том направлении копаю?
Отредактировано Oberoda (Июнь 11, 2018 16:26:26)
Офлайн
857
OberodaОткрой консоль в браузере, там обычно видно все запросы. Нажатие на кнопку формирует запрос, сама кнопка и поля роли не играют никакой, они созданы только для удобства отправки запросов. Можешь поставить Firebug в браузер, но обычно хватает средств и без него всё узнать.
Но у меня ровно ноль знаний об html, запросах get\post и т.д.
Отредактировано py.user.next (Июнь 12, 2018 00:10:16)
Офлайн
0
py.user.nextСпасибо за ответ!
Отредактировано Oberoda (Июнь 12, 2018 01:06:11)
Офлайн
857
OberodaВнутри браузера есть своя консоль, которая относится только к браузеру. В Firefox'е, например, она открывается через F12, хотя и в меню есть доступ к ней. Там можно смотреть, как загружаются страницы и из чего они состоят. Там же можно редактировать DOM (динамическая структура загруженной страницы), там же можно выполнять инструкции JavaScript. И там же есть вкладка, где можно смотреть выполняемые запросы при нажатии всяких кнопок на странице. Вот там можно узнать, что происходит (какой запрос составляется), когда нажимаешь на кнопку на странице сайта. Узнав этот запрос и как он составляется при нажатии на кнопку, эту информацию можно уже переносить в скрипт на питоне (или вообще на любом языке).
\Открой консоль в браузере\ я не знаю как это сделать в Win. Или это под Линуксом делается?
OberodaТы можешь использовать urllib.request (в стандартной библиотеке). А можешь использовать requests (надо установить). Главное, тебе надо понять, как на сервер отправить HTTP-запрос. А для этого надо почитать инфу про HTTP-протокол. Можешь начать читать на вики, а потом оттуда уже перейти на RFC, где всё более подробно описано. В RFC очень технический язык, так сразу не разберёшься, но его можно использовать как полный справочник по всем командам, доступным в протоколе, и их эффектам.
Может надо изучить какие то библиотеки для Python?
Отредактировано py.user.next (Июнь 12, 2018 01:35:58)
Офлайн