Большинство текущих проектов навигационных страниц с открытым исходным кодом не очень настраиваемы, а информация, на которую люди хотят обратить внимание, слишком разбросана. Поэтому я решил написать навигационную страницу, которая может быть легко настраиваема пользователями и интегрировать информацию и функции. им нужно.
Обновления возобновляются! Последние два года я был занят работой, и у меня не было много сил, в последнее время мне понадобится время на его ремонт.
Интерфейсная часть использует Vue.js, серверная часть — Python, а MariaDB+Redis обеспечивает хранение данных. Внешняя среда использует Element UI, внутренняя платформа использует Flask, а внутренняя ORM использует Peewee.
? Если у вас есть какие-либо ОШИБКИ/требования/предложения, прикрепите шаги/идеи по воспроизведению и сообщите о проблемах!
Добро пожаловать, звезда!
? Я лично пользуюсь им в аэропорту уже несколько лет. Это быстро и дешево. Очень рекомендую. Нажмите на эту ссылку!
Внутреннее продвижение по набору персонала в социальных сетях ByteDance можно просто щелкнуть по этой ссылке, чтобы отправить код внутреннего продвижения по набору персонала в кампусе: AWN958P, добро пожаловать, пересылайте и распространяйте!
Ветка разработки находится в стадии разработки, и при ее работе могут возникнуть проблемы. Для тестирования развертывания рекомендуется использовать главную ветку.
Докер уже работает над этим~
Сначала вам понадобятся Python3, Pip, MySQL (при тестировании использовалась MariaDB) и среда Redis.
Ключ, используемый для SeverChan, используется для отправки напоминаний в WeChat; ключ, используемый для Zefeng Weather, используется для получения информации о погоде; электронная почта и пароль отправляются по умолчанию. См. метод получения пароля почтового ящика QQ.
После того, как у вас есть среда, используйте python3 для запуска start.py в корневом каталоге и следуйте инструкциям.
Оглавление | содержание |
---|---|
/бэкенд | внутренний код |
/backend/run.py | Входной файл серверной части |
/внешний интерфейс | внешний код |
/расстояние | Продукт фронтенд-компиляции |
/загрузить | Хранить файлы, загруженные пользователями |
/обои | Храните соскобленные обои Bing |
Вы можете нажать здесь, чтобы использовать vscode для временной проверки кода.
Вход: Главная страница
Функция: переход к URL-адресу поиска после ввода контента. При входе на страницу фокус автоматически помещается в поле поиска. Ввод текста может вызвать подсказки (необходимо настроить функцию обратного вызова соответствующей системы в таблице данных search_engines). Если вы добавляете или удаляете движки, то это тоже в базу данных добавляется.
Вход: Наведите курсор на имя пользователя в левом верхнем углу после входа в Консоль.
Функция: обеспечивает вход в интерфейсный компонент, зарегистрированный в таблице консоли, для облегчения будущих операций управления разрешениями или сортировки. Если вам нужно добавить внешний модуль, помимо написания внешнего бизнеса, вам также необходимо добавить. запись в консольной таблице.
Вход: После входа наведите имя пользователя в левом верхнем углу - консоль - платформа запуска скриптов.
Функция: Единый драйвер для фоновых программ. Все внешние формы генерируются конфигурацией, и нет необходимости трогать внешний код. Вы можете отправить сценарий внутреннему работающему сценарию, заполнив форму, созданную конфигурацией, и отобразить результаты выполнения. Он также имеет возможность регулярно запускать сценарии, воспроизводить ранее выполненные задачи и записывать время выполнения, записывать журналы операций, настраивать формы записи операций и другие гуманизированные функции.
Уведомление:
Модуль:
Редактировать скрипт:
Начальные параметры:
Варианты компонентов:
print()
непосредственно в скрипте для печати текста, который необходимо вывести. Кроме того, через определенный формат данных можно инициализировать параметры компонента селектора. См. пример. ниже: import json
d = {
'code' : 200 , # 状态码,非必填,无实际作用
'data' : {
'msg' : 'hello n world qwe n qewqweewqwe' , # 展示的文本,非必须,会被解析为html,使用"n"换行
'value' : '123' , # 非必须,当传递value时,会将组件内的值替换成传回的值
'options' : [ # 非必须,当传递options时,会将选择器组件内的选项替换成传回的选项
{
'label' : '234' , # 标签,用于选择器组件展示的值
'value' : '234' # 值,用于选择器组件选择时实际代表和传递的值
},
]
}
}
print ( json . dumps ( d ))
Вход: Наведите курсор на имя пользователя в левом верхнем углу после входа в Консоль-Аккаунт и Разрешения.
Функция: система управления разрешениями на уровне интерфейса, написанная с использованием модели «пользователь-роль-разрешения». Интерфейс может управлять разрешениями с помощью декоратора. По умолчанию, когда пользователь запрашивает интерфейс, запрашивающий IP-адрес должен соответствовать IP-адресу, используемому при входе в систему. Это относительно строгая политика, и ее можно отключить в «/backend/app/privilege/privilege_control.py:24».
Модуль:
Настройки пользователя: добавление пользователей, отключение пользователей, удаление пользователей, изменение ролей пользователей, изменение паролей пользователей.
Настройки разрешений, соответствующих ролям: добавление ролей, отключение ролей, удаление ролей, изменение имен ролей, изменение разрешений, соответствующих ролям.
Настройки разрешений: добавление разрешений, отключение разрешений, удаление разрешений, изменение разрешений.
Вход: После входа наведите курсор на имя пользователя в левом верхнем углу-Консоль-Изменить компонент домашней страницы.
Функция: перетащите, чтобы изменить способ отображения домашней страницы. Родительский элемент компонента определяется как «набор компонентов». Если существует только один набор компонентов, на странице не отображается заголовок набора компонентов, а отображаются только те компоненты, которые он содержит. При наличии двух или более наборов компонентов. на странице отображаются наборы компонентов и компоненты, которые они содержат.
Кнопка: используйте перетаскивание влево и вправо, чтобы изменить порядок набора компонентов, используйте круглую кнопку «плюс» на правой стороне набора компонентов, чтобы добавить набор компонентов, используйте кнопку редактирования внутри каждого набора компонентов, чтобы изменить имя компонента. установите, используйте каждый компонент. Используйте кнопку «Удалить» внутри набора, чтобы удалить набор компонентов. Используйте метод перетаскивания вверх и вниз, чтобы изменить порядок компонентов в наборе компонентов. Используйте кнопку «квадратный плюс» в каждом наборе компонентов, чтобы добавить компоненты; и используйте кнопку удаления на правой стороне компонента, чтобы удалить его. Сведения о компоненте не поддерживают модификацию. Вы можете вручную изменить библиотеку (виджет), чтобы изменить ее.
Вход: Наведите курсор на имя пользователя в левом верхнем углу после входа в систему - сетевой диск/кровать с картинками.
Сетевой диск:
Простая функция сетевого диска, поддерживающая совместное использование через ссылки для загрузки. Нет ограничений на размер загружаемых файлов и скорость загрузки. Однако при загрузке больших файлов вам нужно подождать некоторое время, пока загрузка не завершится. Файл сохраняется в папке загрузки корневого каталога, и создается подпапка с именем Date.
Кнопка: верхняя часть интерфейса — это кнопка загрузки файла. Вы можете нажать и выбрать файл или загрузить его, перетащив файл в браузер; в списке файлов ниже расположены следующие кнопки: 1. Кнопка «Загрузить» — нажмите, чтобы загрузить. 2. Появится кнопка «Поделиться» (не предоставлен общий доступ) — после нажатия будет создана ссылка для обмена. После того, как вы поделитесь им с другими, другие могут вставить его в браузер, чтобы запустить загрузку файла. и сжатый, и фактическая загрузка Ссылка для скачивания будет сжата в короткую ссылку для удобства использования, а ссылка имеет токен аутентификации для обеспечения базовой безопасности. 3. Кнопка «Копировать ссылку общего доступа» (появляется после публикации) — нажмите, чтобы скопировать ссылку общего доступа в буфер обмена. 4. Кнопка «Отменить общий доступ» (появляется после общего доступа) — аннулирует ссылку общего доступа и отменяет общий доступ. 5. Кнопка «Удалить» — логическое удаление файла. 6. Кнопка «Изменить имя файла», вы можете изменить имя файла;
Кровать на фото:
Если вы не войдете в систему, будет отображаться информация о погоде для IP-адреса (ограничено сторонним API, а когда IP-адрес находится за границей, поддержка не очень хорошая. Вы можете настроить его после входа в систему, а также Диапазон отображения — IP + пользовательская информация о местоположении. Кроме того, при запросе данных для обеспечения скорости сначала будет использоваться кеш. Кэшированные данные действительны в течение 3 часов (изменено в backendappweatherweather_function.py:16). кеш, внешний API будет запрошен для получения данных и сохранения их в кеше
Кнопка: Добавить — добавить новый город после входа в систему; Сортировать — можно перетаскивать, чтобы сортировать или удалять настроенные города. Нажать — для нажатия доступны три типа аномальных погодных условий, а именно дождь и снег, внезапное повышение/понижение температуры, и качество воздуха, а также местоположение, которое нужно нажать, и местоположение, которое будет отображаться, независимы и могут быть установлены отдельно.
Вы можете настроить его после входа в систему. Закладки, отображаемые без входа в систему, изменяются в базе данных (bookmarks.user_id==0).
Кнопка: Добавить — добавление закладок после входа в систему. Настройки — перетаскивание значков для сортировки, удаления или изменения закладок после входа в систему;
Находите приложения в Apple App Store, отслеживайте их цены и предупреждайте пользователей, когда они ниже установленного порога.
Регулярно записывайте заметки и отправляйте их содержимое в WeChat/по электронной почте. Поскольку мы не хотим усложнять функцию, отправленный push нельзя отозвать, но его можно установить несколько раз. То есть заданный push можно добавлять по желанию, но нельзя вычитать. Кроме того, заметки можно откатить к предыдущим версиям через «машину времени», которая подходит для случайного удаления и других ситуаций.
Кнопки: при наведении курсора мыши на многоточие могут появиться три кнопки: «Редактировать» и «Удалить» — отредактировать или удалить выбранную заметку и сохранить все заметки как новую версию после отправки. Напоминание — нажмите, чтобы открыть диалоговое окно с напоминанием о редактировании; Доступен через WeChat. Напомните содержание заметки по электронной почте с минимальной детализацией в пять минут. Круглые кнопки ниже — это новая кнопка и кнопка машины времени соответственно. Функции не будут описываться повторно.
Реализовано с помощью переводчиков, с использованием сервиса Alibaba. При вводе текста в область ввода слева через некоторое время он будет переведен на выбранный выше язык.
Система использует «платформу запуска сценариев» для запуска сценариев для сканирования одного обоя Bing каждый день, а виджет прокручивается для отображения обоев в течение 7 дней. Нажмите на изображение, чтобы загрузить исходное изображение.
Отслеживайте цены на золото и можете устанавливать пороговые значения для отправки оповещений, когда цена превышает пороговое значение. Вам необходимо настроить запланированные задачи в «Платформе выполнения сценариев». При сканировании данных сканер будет пропускать время, когда внутреннее золото не открыто.
Сканируйте биржевые данные с фондовых рынков Шанхая и Шэньчжэня, акций Гонконга и США и устанавливайте функцию напоминания при превышении порогового значения.
Сканируйте данные фонда и установите функцию напоминания при превышении порога.
Он объединяет информацию с более чем 20 веб-сайтов и собирает ее каждый час с помощью запланированных задач. Ее можно обновить вручную, щелкнув заголовок. Ниже приведены скриншоты содержимого.
Примечание. По состоянию на ноябрь 2020 года Baidu, Weibo, Omelette и Sogou четко запрещают отдельным пользователям сканировать любую информацию. Пожалуйста, строго удаляйте соответствующие коды при запуске проекта.
Поскольку правила сайта могут измениться, пожалуйста, при запуске проекта последовательно проверяйте источники данных, используемые в этом проекте. Если протокол robots запрещает сканирование отдельными пользователями, удалите соответствующий код!
Соблюдайте протокол роботов, соблюдайте этику сканирования и создавайте лучшую интернет-среду.
?Разработка этого проекта опирается на большое количество отличных проектов с открытым исходным кодом и веб-сервисов:
Код был оптимизирован с использованием таких методов, как кэширование данных и ограничение частоты, чтобы избежать увеличения нагрузки на веб-сайт при сканировании данных.
Полученные данные предназначены только для ознакомления. В случае нарушения прав немедленно свяжитесь с нами, чтобы удалить их.
?Электронная почта: [email protected]
?Если этот проект вдохновляет или помогает вам, возможно, вы захотите поддержать разработчика.
МПЛ-2.0