Вход Блог
Строительство и ремонт
Репетиторы
Красота
Фрилансеры
Разные специалисты
Уход за животными
Тренеры
Автоинструкторы

Разработка на Python — удалённая работа в Москве

Дата: 2025-11-13
Детали
Регион
Москва
Занятость
дистанционно
Стоимость
договорная
Дата публикации
2025-11-13
Описание
Скрипт на питоне. Разработка с нуля. Пожелания и особенности: Техническое задание: Эмулятор действий пользователя для автоматического заполнения веб-форм 1. Общие сведения 1.1. Наименование проекта Эмулятор действий пользователя для автоматического заполнения веб-форм на основе данных из Excel файлов. 1.2. Цель проекта Разработка Python-скрипта, который автоматизирует процесс входа в личный кабинет на веб-сайте и заполнения регистрационных форм данными из Excel файла. 2. Функциональные требования 2.1. Основной функционал · Чтение данных из Excel файла (.xlsx, .xls) · Автоматический вход в личный кабинет на целевом сайте · Навигация по страницам личного кабинета · Заполнение веб-форм данными из Excel · Обработка различных типов полей ввода (текст, выбор из списка, чекбоксы и т.д.) · Сохранение результатов обработки 2.2. Дополнительный функционал · Логирование процесса выполнения · Обработка ошибок и исключительных ситуаций · Возможность настройки задержек между действиями · Поддержка различных веб-браузеров 3. Технические требования 3.1. Технологический стек · Язык программирования: Python 3.8+ · Библиотеки для работы с браузером: Selenium WebDriver · Библиотеки для работы с Excel: openpyxl или pandas · Дополнительные библиотеки: requests, time, logging 3.2. Требования к окружению · Установленный Python 3.8+ · Веб-браузер (Chrome, Firefox или Edge) · Соответствующий драйвер для браузера · Доступ к интернету 4. Функциональная спецификация 4.1. Модуль чтения данных из Excel ```python # Псевдокод основной функциональности def read_excel_data(file_path): “““ Чтение данных из Excel файла Возвращает список словарей с данными для заполнения “““ ``` 4.2. Модуль работы с браузером ```python # Псевдокод основной функциональности def initialize_browser(): “““ Инициализация веб-драйвера и браузера “““ def login_to_website(credentials): “““ Авторизация на целевом сайте “““ def fill_form(form_data): “““ Заполнение веб-формы данными “““ ``` 4.3. Модуль обработки данных ```python # Псевдокод основной функциональности def process_excel_data(excel_data): “““ Преобразование данных из Excel в формат для заполнения форм “““ ``` 5. Структура проекта ``` web_form_filler/ ??? main.py # Главный исполняемый файл ??? config/ # Конфигурационные файлы ? ??? settings.py # Настройки приложения ? ??? selectors.py # CSS-селекторы для элементов страницы ??? modules/ # Модули приложения ? ??? excel_reader.py # Чтение данных из Excel ? ??? browser_controller.py # Управление браузером ? ??? form_filler.py # Заполнение форм ? ??? logger.py # Логирование ??? data/ # Данные ? ??? input/ # Входные Excel файлы ? ??? output/ # Результаты обработки ??? drivers/ # Веб-драйверы ??? requirements.txt # Зависимости проекта ``` 6. Алгоритм работы 1. Инициализация · Загрузка конфигурации · Инициализация логгера · Проверка наличия необходимых файлов 2. Чтение данных · Загрузка Excel файла · Парсинг данных в структурированный формат · Валидация данных 3. Работа с браузером · Запуск браузера · Переход на целевой сайт · Авторизация в личном кабинете 4. Заполнение форм · Навигация к форме · Поиск элементов формы · Заполнение полей данными из Excel · Отправка формы 5. Завершение работы · Сохранение результатов · Закрытие браузера · Формирование отчета 7. Требования к конфигурации 7.1. Конфигурационный файл (config/settings.py) ```python # Пример структуры конфигурации CONFIG = { 'website_url': 'https://example.com/login', 'credentials': { 'username': 'your_username', 'password': 'your_password' }, 'excel_settings': { 'file_path': 'data/input/data.xlsx', 'sheet_name': 'Sheet1', 'header_row': 0 }, 'browser_settings': { 'browser_type': 'chrome', # chrome, firefox, edge 'headless': False, 'implicit_wait': 10 }, 'form_selectors': { 'username_field': '#username', 'password_field': '#password', 'login_button': '#login-btn', # ... другие селекторы } } ``` 8. Обработка ошибок 8.1. Типы обрабатываемых ошибок · Ошибки чтения Excel файла · Ошибки сети и подключения · Ошибки поиска элементов на странице · Ошибки авторизации · Таймауты и исключения веб-драйвера 8.2. Стратегия обработки ошибок · Повторные попытки для неудачных операций · Детальное логирование ошибок · Сохранение состояния обработки · Возможность возобновления с места ошибки 9. Требования к качеству 9.1. Производительность · Оптимизация времени выполнения · Минимизация использования ресурсов · Эффективное управление памятью 9.2. Надежность · Стабильная работа при длительном выполнении · Корректная обработка прерываний · Восстановление после сбоев 9.3. Безопасность · Безопасное хранение учетных данных · Защита от утечки конфиденциальной информации 10. Документация 10.1. Техническая документация · Комментарии в коде · README файл с инструкцией по установке и использованию · Описание API модулей 10.2. Пользовательская документация · Руководство по настройке · Примеры конфигурационных файлов · Пример структуры Excel файла 11. Критерии приемки 11.1. Функциональные критерии · Корректное чтение данных из Excel файла · Успешная авторизация на целевом сайте · Заполнение всех указанных полей формы · Обработка всех записей из Excel файла · Корректное логирование процесса 11.2. Технические критерии · Соответствие PEP8 · Наличие обработки исключений · Модульная структура кода · Возможность конфигурации без изменения кода 12. Ограничения и допущения · Приложение предназначено для легального использования · Требуется стабильное интернет-соединение · Структура веб-страниц должна быть относительно стабильной · Excel файл должен иметь предопределенную структуру --- Примечание: Конкретные детали реализации (URL сайта, структура форм, селекторы элементов) должны быть уточнены на этапе разработки после анализа целевого веб-сайта.
Похожие заказы

Разработка на Python

дистанционно
договорная
Веб-разработка. Разработка с нуля. Требуется создание скрипта для пересчета координат из системы МСК в WGS. Скрипт получает файл в виде csv файл с содержимым вида: номер публикации о земельном участке, номер квартала, координаты точки (х и у), система координат (но не всегда эти данные по системе координат определяются корректно, либо отсутствуют полностью!!!). Далее скрипт, который будет брать эти данные, определять систему координат МСК по номеру квартала и конвертирует координаты в WGS, чтобы можно было определить по gps координатам расположение участка Скрипт должен работать по всем существующим системам координат в России, создание справочника всех МСК - на исполнителе. Примеры пересчета можно посмотреть на сторонних сайтах, как работают конвертеры. Порядок осей. Во входном файле координаты в российской традиции: X — север, Y — восток. В библиотеке PROJ порядок обратный: x_0 — ложный восток, y_0 — ложный север. Формат передачи — структурированные параметры, а не строки proj4. Алгоритм работы Создание справочника всех МСК По номеру квартала определить кадастровый район, по нему — зону МСК (справочник). Получить параметры зоны (справочник). Выполнить обратную проекцию Гаусса-Крюгера: плоские координаты ? геодезические на эллипсоиде Красовского. Выполнить переход от датума Пулково-1942 к WGS84 по стандартным общенациональным параметрам. Проверить результат на вменяемость. Записать результат и статус. Математику выполняет библиотека pyproj. Самостоятельная реализация формул проекции не требуется. Проверка на вменяемость Полученные координаты проверяются на попадание: в границы территории Российской Федерации; в примерную область кадастрового округа, к которому относится участок (допустимо задать прямоугольниками с запасом). Если проверка не пройдена, пересчёт считается неудачным. Координаты в этом случае не выдаются как годные к дальнейшей обработке. Эта проверка обнаруживает основные виды ошибок: неверно определённую зону, ошибку в параметрах, перепутанные оси. Все они дают промах в сотни и тысячи километров, поэтому надёжно отсекаются. Неоднозначные случаи Если для кадастрового района в справочнике указано несколько зон, пересчёт выполняется по каждой. Если проверку на вменяемость прошёл ровно один вариант — он принимается. Если прошло несколько или ни один — строка помечается соответствующим статусом и дальше не передаётся. Допустимая точность Целевое назначение результата — поиск участка на кадастровой карте. Достаточна точность в пределах десятков метров: участок имеет размер в десятки метров, и попадание точки в центр (!!!) его контура — всё, что требуется. Геодезическая точность не нужна. Существенно, что ошибки пересчёта в этой схеме не дают ложноположительного результата: при неверных параметрах точка улетает далеко за пределы участка, карта не возвращает ничего, и участок просто не подтверждается. Поэтому расчётные параметры на данном этапе приемлемы. 5. Выходные данные 5.1. Файл по точкам CSV, одна строка — одна точка. Все входные колонки сохраняются, добавляются: Колонка Содержание широта WGS84, десятичные градусы долгота WGS84, десятичные градусы код применённой зоны статус примечание текст ошибки при неудаче Критерии приёмки Отсутствие ложных результатов. Тесты, подтверждающие корректную обработку каждого статуса, в том числе: перепутанные местами X и Y, неизвестный квартал, отсутствующие параметры, координаты, не попадающие в допустимую область. Контрольная выборка. На выборке, предоставленной заказчиком (не менее 30 участков с известными кадастровыми номерами, не менее 5 кадастровых округов), пересчитанная точка должна попадать внутрь фактического контура участка. Результат оформляется отчётом. Отчёт о покрытии. По итогам работы — таблица: кадастровые районы, для которых справочники заполнены, и районы, оставшиеся без зоны или без параметров. В задачу входит сбор всех МСК по России.
Москва Фрилансеры

Разработка на Python

дистанционно
договорная
Лабораторную работу по разработке REST API на Python. В ней нужно реализовать API с базой данных, CRUD-операциями, минимум 7 эндпоинтами, фильтрацией, валидацией и документацией Swagger UI или ReDoc. Разработка с нуля. Лабораторную работу по разработке REST API на Python. В ней нужно реализовать API с базой данных, CRUD-операциями, минимум 7 эндпоинтами, фильтрацией, валидацией и документацией Swagger UI или ReDoc И Интеграция REST API с фронтендом на React.
Москва Фрилансеры

Разработка на Python

дистанционно
договорная
Нужна админ панель для СМС по заданным номерам сотрудников и по расписанию. Разработка с нуля. Пожелания и особенности: Нужно написать админ панель для web-сервера на основе apache. VPS на Linux На python Должны присутствовать 1. Список получателей (сотрудники) 2. Шаблоны СМС Настройка на СМС сервис.
Москва Фрилансеры

Разработка на Python

дистанционно
договорная
Adb управление телефоном (разработка модулей). Доработка существующего продукта. Пожелания и особенности: Опыт работы с adb приветствуется.
Москва Фрилансеры

Разработка на Django

дистанционно
договорная
Веб-разработка. Разработка с нуля. Обучение.
Москва Фрилансеры

Разработка на Python

дистанционно
договорная
Веб-разработка. Обучение на phyton. Ученик 6 класса, нужно увлечь,чтобы у компа сидел с пользой.
Москва Фрилансеры

Разработка на Python

дистанционно
договорная
Веб-разработка. Разработка с нуля.
Пермь Фрилансеры