Code Monkey home page Code Monkey logo

digital-technology-agency / web-scan Goto Github PK

View Code? Open in Web Editor NEW
12.0 3.0 1.0 6 MB

A program that generates a combination of letters from the alphabet and composes an address for accessing the site.After that, it reads the data from the title and description of this site and saves it to the structure. At the end, the program displays all the titles and descriptions of the available sites.

Home Page: https://dta.agency

License: MIT License

Go 97.21% Shell 1.01% Makefile 1.78%
scanner webscan generate alphabet fun simple channels gorutines go golang

web-scan's People

Contributors

deemakuzovkin avatar digitaltechnologyagency avatar nakem1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

nakem1

web-scan's Issues

Firebird - Интеграция

  • Настроить соединение с БД
  • Создавать базу, если такой нет
  • Создавать необходимые таблицы, если их нет
  • Дабавление данных
  • Настройка обновления данных

PostgreSQL - Интеграция

  • Настроить соединение с БД
  • Создавать базу, если такой нет
  • Создавать необходимые таблицы, если их нет
  • Дабавление данных
  • Настройка обновления данных

Создать отдельный сервис для генерации адресов

  • Создать интерфейс сервиса, для удобства тестирования.
  • Изменить существующий метод генерации адреса для создания многопоточного сервиса.
  • Вынести сервис в отдельный пакет, где расположены все остальные сервисы.
  • Покрыть тестами все публичные методы сервиса.

MSSQL - Интеграция.

  • Настроить соединение с БД
  • Создавать базу, если такой нет
  • Создавать необходимые таблицы, если их нет
  • Дабавление данных
  • Настройка обновления данных

Сервис логирования информации

  • Создать структуру лог-сервиса
  • Создать сервис
  • Info
  • Warning
  • Trace
  • Fatal
  • Конструкция записи в разные форматы файлов
  • Возможность синхронизации итоговых логов с облачным хранилищем.

Настроить сборку проекта под разные OS

- [] android arm

  • darwin 386
  • darwin amd64
    - [] darwin arm
  • darwin arm64
  • dragonfly amd64
  • freebsd 386
  • freebsd amd64
    - [] freebsd arm
  • linux 386
  • linux amd64
    - [] linux arm
  • linux arm64
  • linux ppc64
  • linux ppc64le
  • linux mips
  • linux mipsle
  • linux mips64
  • linux mips64le
  • netbsd 386
  • netbsd amd64
    - [] netbsd arm
  • openbsd 386
  • openbsd amd64
    - [] openbsd arm
  • plan9 386
  • plan9 amd64
  • solaris amd64
  • windows 386
  • windows amd64

MariaDB - Интеграция

  • Настроить соединение с БД
  • Создавать базу, если такой нет
  • Создавать необходимые таблицы, если их нет
  • Дабавление данных
  • Настройка обновления данных

SQLite

  • Настроить соединение с БД
  • Создавать базу, если такой нет
  • Создавать универсальный сервис для работы с базами данных.
  • Создавать необходимые структуры и интерфейсы для инкапсуляции моделей в сервис базы данных.
  • Реализовать интерфейс сущности базы данных для модели.
  • Создавать необходимые таблицы, если их нет
  • Дабавление данных
  • Настройка обновления данных

Сохранение данных в файл формат CSV

  • Создание сервиса сохранения данных в файл.
  • Создание метода записи с передачей аргуметов в виде интерфейса.
  • Возможность перезаписывать данные после каждого запуска программы.
  • Обработка ошибок записи в файл
  • Возможность записывать группы файлов. Например по протоколу или домену.

Создать файл конфигурации сервиса

  • Настроить как параметр. Можно передавать путь к файлу.
  • Возможность изменять список доступных параметров
  • Возможность выгрузить шаблон конфигурации
  • Создать сервис для работы с конфигурационным файлом
  • Создать структуру конфигурационного файла
  • Поместить в струтуру основные сервисы и параметры программы
  • Интегрировать конфигурацию в текущую архитектуру сервиса
  • Валидация конфигурационного файла, при загрузке

MongoDB - Интеграция

  • Настроить соединение с БД
  • Создавать базу, если такой нет
  • Создавать необходимые таблицы, если их нет
  • Дабавление данных
  • Настройка обновления данных

Сервис очередей

  • Сервис получения сообщения из очереди
  • Сервис отправки сообщений в очередь
  • Многопоточная обработка сообщений

Сохранение данных в файл формат ORC

  • Создание сервиса сохранения данных в файл.
  • Создание метода записи с передачей аргуметов в виде интерфейса.
  • Возможность перезаписывать данные после каждого запуска программы.
  • Обработка ошибок записи в файл
  • Возможность записывать группы файлов. Например по протоколу или домену.

MySql - Интеграция

  • Настроить соединение с БД
  • Создавать базу, если такой нет
  • Создавать необходимые таблицы, если их нет
  • Дабавление данных
  • Настройка обновления данных

remove linter errors

Нужно устранить ошибки линтера. Возможно, еще стоит перевести некоторые ошибки на английский язык.

Загрузка главной страницы сайта index.html.

  • Создание сервиса для работы со страницей.
  • Создание метода записи полученных данных в файл index.html.
  • Возможность перезаписывать данные после каждого запуска программы.
  • Обработка ошибок записи файла

Загрузка файла sitemap.xml

  • Создание сервиса для работы со страницей.
  • Создание метода записи полученных данных в поле sitemap.xml.
  • Возможность перезаписывать данные после каждого запуска программы.
  • Обработка ошибок записи файла

add Makefile, gofumpt, golangci-lint

Makefile нужен для сокрытия деталей сборки проекта.

gofumpt - это более строгий форматер для проекта. Код станет немного лучше.

golangci-lint - очень мощный аггрегатор линтеров. Все самые необходимые линтеры нужно добавить в .golangci.yml
Список линтеров - это субъективно и обсуждаемо.

Загрузка файла robots.txt

  • Создание сервиса для работы со страницей.
  • Создание метода записи полученных данных в поле Robots robots.txt.
  • Возможность перезаписывать данные после каждого запуска программы.
  • Обработка ошибок записи файла

Сохранение данных в файл. Формат "JSON each row"

  • Создание сервиса сохранения данных в файл.
  • Создание метода записи с передачей аргуметов в виде интерфейса.
  • Возможность перезаписывать данные после каждого запуска программы.
  • Обработка ошибок записи в файл
  • Возможность записывать группы файлов. Например по протоколу или домену.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.