Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Герои Войны - микс стратегии и РПГ. Собери лучшую армию и победи всех врагов. В игре 7 различных режимов - как для любителей PvE, так и PvP.

Герои Войны

Стратегии, Мидкорные, Экшены

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Json + Программирование

С этим тегом используют

IT юмор IT Программист Разработка Python Картинка с текстом Юмор Все
15 постов сначала свежее
Аноним
Аноним
2 года назад
Web-технологии

Как самостоятельно выучить JavaScript? Топ бесплатных курсов для начинающих!⁠⁠

[моё] YouTube IT Программирование Курсы программирования Разработка Программист Javascript Json Python Windows Видео
2
552
Immortalique
Immortalique
2 года назад
Типичный программист

Хэй, Джейсон!⁠⁠

Хэй, Джейсон! Программирование, Json, IT юмор, Программист, AJAX, API, Юмор, Джейсон Вурхис, Картинка с текстом
Показать полностью 1
[моё] Программирование Json IT юмор Программист AJAX API Юмор Джейсон Вурхис Картинка с текстом
13
9
DELETED
3 года назад
Web-технологии

Рендер страницы через JavaScript⁠⁠

Задача

Есть API, который в ответ на запрос отдает json со списком фреймворков и их описанием. Необходимо на его основе отрендерить карточки.

Рендер страницы через JavaScript Программирование, Разработка, IT, Программист, Обучение, Javascript, Json, Frontend, Web, Web-программирование, Рендер, HTML, Кодирование, Фронт, Длиннопост

Прототип

Алгоритм

- Получить список;

- Обработать список;

- Отрендерить в HTML.


1. Получить список

Для данной статьи я подготовил тестовые данные, которые можно получить по адресу:

https://private-531a0-vadimfilimonovblog.apiary-mock.com/fra...

Чтобы сделать HTTP запрос — используйте метод fetch:

fetch("https://private-531a0-vadimfilimonovblog.apiary-mock.com/fra...")

2. Обработать список

Вот как выглядит json, который мы получаем:

{
  "success": true,
  "list": [
    {
      "title": "React",
      "text": "React is an open-source...

Напишем функцию buildHTML, которая на вход будет принимать JSON, а отдавать строку, которую мы в будущем используем как HTML:

// HTTP запрос
fetch("https://private-531a0-vadimfilimonovblog.apiary-mock.com/fra...")
  // переводим ответ в json
  .then(response => response.json())
  // конвертируем в html
  .then(buildHTML)

Определение функции:

const buildHTML = ({ list }) =>
  list.map(({ title, text }) => (`
    <div>
      <h2>${title}</h2>
      <p>${text}</p>
    </div>
`)).join("");

3. Отрендерить в HTML


fetch("https://private-531a0-vadimfilimonovblog.apiary-mock.com/fra...")
  .then(response => response.json())
  .then(buildHTML)
  .then(render); // полученный результат передает в функцию render

В файле HTML создадим пустой контейнер, куда будем вставлять карточки:

<div class="container"></div>

https://developer.mozilla.org/en-US/docs/Web/API/Element/inn... функции render сводится лишь к использованию свойства innerHTML:

const render = (html) => {
  const container = document.querySelector('.container');
  container.innerHTML = html;
};
Рендер страницы через JavaScript Программирование, Разработка, IT, Программист, Обучение, Javascript, Json, Frontend, Web, Web-программирование, Рендер, HTML, Кодирование, Фронт, Длиннопост

Результат

Полную версию кода смотрите на codepen.

Показать полностью 2
[моё] Программирование Разработка IT Программист Обучение Javascript Json Frontend Web Web-программирование Рендер HTML Кодирование Фронт Длиннопост
14
6641
DELETED
3 года назад
IT-юмор

Сталин и ИТ⁠⁠

Сталин и ИТ
Сталин IT Программирование X (Twitter) Json Юмор IT юмор
126
31
FabLabCFU
4 года назад
Arduino & Pi

Прошивка для платы управления двигателем RMD-X8 Pro⁠⁠

В рамках создания комплекса экзокисти под управлением нейрокомпьютерного интерфейса написал прошивку для Arduino Mega, которая через CAN-контроллер управляет серводвигателем RMD-X8 Pro, приводящим в движение механизм экзокисти. Модель экзокисти создавали наши студенты, прошивка представляла собой скетч, вырезанный из другого проекта, двигатель мог управляться только с помощью джойстика. Причем джойстик при движении вперед раскручивал двигатель вперед, а при отклонении джойстика в обратную сторону постепенно останавливал его и начинал неконтролируемые движение в обратном направлении. При остановке джойстика движение также не прекращалось. Контроля углов вращения не было.

Прошивка для платы управления двигателем RMD-X8 Pro Arduino, Json, Сервопривод, Прошивка, Экзоскелет, Программирование, Вертикальное видео, Видео, Длиннопост

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


Для двигателя есть настроечная программа, которая работает по протоколу serial-232, имеются варианты интерфейса двигателей с RS485 у которого больше возможностей, чем у CAN, который через один датафрейм может передать максимум 8 байт. В тестовой вкладке программы настройки примеры интерфейса управлением двигателя работают не так, как хотелось бы, но зато оказалось, что там есть команды, не описанные в документации. При использовании тестовых режимов программа указывает, какие данные она пересылает в датафрейме, и стало видно, что кроме команд позиционирования А1-А6 также используются команды А7 и А8, и последняя команда как раз подошла для нашей задачи.

Сейчас прошивка реализована следующим образом: от джойстика или от внешней управляющей программы (в итоге это будет нейрокомпьютерный интерфейс) приходит команда, что нужно выставить угол экзокисти в заданное значение. Прошивка определяет текущее положение двигателя, если угол больше, то подается команда на движение в обратную сторону, положение кисти постоянно контролируется.

Энкодер двигателя очень чувствительный – он позволяет позиционировать двигатель с точностью до сотых долей градуса. При команде на остановку двигатель по инерции проходит еще несколько сотых градуса, и без усреднения данных положения энкодер постоянно пытался бы вернуть двигатель точно в заданное положение, опять бы проскакивал его по инерции и т.д., что вызывало бы постоянное дерганье. Усреднил показания позиции, разделил их на 100 и отбросил дробную часть, чтобы сравнивались только целые градусы углов, поскольку точность в 1 градус вполне достаточна, а лишних дерганий удается избежать.


Добавил в прошивку подстраховку, что в случае неисполнения двигателем команды на остановку она будет посылаться снова и снова, пока двигатель не остановится. Кроме того, есть команда на аварийное отключение двигателя, если что-то идет не так.

Также добавил в прошивку работу с внешними интерфейсами через последовательный порт в формате JSON, через которые прошивка будет получать команды от внешней управляющей программы. На Java написана ретранслирующая программа, которая принимает пакеты по протоколу UDP, пересылает их в Ардуино по serial, с последовательного же порта получает ответ от платы и пересылает его обратно в управляющую программу высокого уровня по UDP. Это необходимо для обратной совместимости со сторонним программным обеспечением.

Показать полностью 1 1
[моё] Arduino Json Сервопривод Прошивка Экзоскелет Программирование Вертикальное видео Видео Длиннопост
18
78
quickwin.ru
quickwin.ru
5 лет назад
MS, Libreoffice & Google docs

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel?⁠⁠

В этом посте я покажу, как с помощью VBA сделать, то, для чего VBA вроде бы как изначально не предназначен – как получить значения нужных переменных из структуры JSON.

Этот пост сделан по мотивам просьбы моего первого и пока единственного подписчика, сделавшего комментарий на предыдущий пост «Макрос получения курсов доллара за период с сайта Банка России»

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

В чем отличие между сервисом ЦБ России и сайтом worldometers.info? В том, что ЦБ предлагает XML сервис для автоматической загрузки информации (см. http://www.cbr.ru/development/SXML/) – ее неудобно смотреть через веб браузер, но удобно получать с помощью паучьих алгоритмов, а worldometers.info предлагает информацию для людей, а не для пауков.

Поэтому создаваемому на VBA паучку придется постараться, чтобы понять разметку «для людей».

Для работы паука необходимо дополнительно подключить три библиотеки:

1. Microsoft XML parser (MSXML) – тот же, что использовался для получения курсов ЦБ с сайта Банка России.

2. Библиотеку для работы с объектной моделью HTML.

3. Библиотеку для использования возможностей JavaScript из VBA.

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Поехали:

1) Запускаем паучка на сайт: https://www.worldometers.info/coronavirus/coronavirus-cases/

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Получаем html с сайта:

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

В полученном html паучку нужно найти и распарсить данные о количестве зарегистрированных случаев из формата JSON. Эти данные представлены вторым аргументом в вызове функции Highcharts.chart(chartName, chartData), которая на сайте рисует график.

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

В результате выполнения нижепредставленного кода в переменной strJson должна оказаться структура с данными в JSON формате.

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Теперь самое интересное – как распарсить эту JSON структуру? Чистый VBA это делать не умеет. Но с JSON прекрасно работает JavaScript. А в VBA есть инструмент для использования возможностей JavaScript для пользователей MS Excel.

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Мы можем в VBA получить уже распарсенную JSON переменную:

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Проблема в том, что с объектом objJSON ничего нельзя сделать в рамках VBA – у него нет ни свойств, ни методов. Поэтому создаем эти методы на языке JavaScript. Нам нужно вытащить даты (xAxis) и количество (series->data):

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Вот что пишем в VBA редакторе:

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Загоняем данные в привычные VBA массивы:

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Ну и раскатываем эти массивы по рабочему листу:

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Вот, что получилось в результате на листе рабочей книги:

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

По этим данным легко построить график, например, такой:

Как найти и распарсить JSON на странице сайта в интернете с помощью VBA Excel? Vba, Json, Javascript, Парсер, Microsoft Excel, Visual basic, Программирование, Длиннопост

Если захотите получить готовый файл Excel с рабочим кодом – дайте знать в комментариях.

Показать полностью 14
[моё] Vba Json Javascript Парсер Microsoft Excel Visual basic Программирование Длиннопост
36
11
gt2000
gt2000
5 лет назад
Лига программистов

JSON убивать!⁠⁠

JSON убивать! Json, Программирование, Web-программирование, Сотрудники
Показать полностью 1
[моё] Json Программирование Web-программирование Сотрудники
8
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии