По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
JSON (JavaScript Object Notation – нотация объектов JavaScript) – это популярный способ структурирования данных. Он используется для обмена информацией между веб-приложением и сервером. Но как прочитать файл JSON в Python? В этой статье я покажу вам, как использовать методы json.loads() и json.load() для интерпретации (или как еще говорят парсинга) и чтения файлов и строк JSON. Синтаксис JSON Прежде чем мы приступим к интерпретации и чтению файла JSON, сначала нам нужно разобраться с основным синтаксисом. Подробнее про JSON можно почитать в этой статье. Синтаксис JSON выглядит как объектный литерал JavaScript с парами ключ-значение. Вот пример данных JSON с данными организации: { "organization": "Company 1", "website": "https://www.website.org/", "formed": 2014, "certifications": [ { "name": "Responsive Web Design", "courses": [ "HTML", "CSS" ] }, { "name": "JavaScript Algorithms and Data Structures", "courses": [ "JavaScript" ] }, { "name": "Front End Development Libraries", "courses": [ "Bootstrap", "jQuery", "Sass", "React", "Redux" ] }, { "name": "Data Visualization", "courses": [ "D3" ] }, { "name": "Relational Database Course", "courses": [ "Linux", "SQL", "PostgreSQL", "Bash Scripting", "Git and GitHub", "Nano" ] }, { "name": "Back End Development and APIs", "courses": [ "MongoDB", "Express", "Node", "NPM" ] }, { "name": "Quality Assurance", "courses": [ "Testing with Chai", "Express", "Node" ] }, { "name": "Scientific Computing with Python", "courses": [ "Python" ] }, { "name": "Data Analysis with Python", "courses": [ "Numpy", "Pandas", "Matplotlib", "Seaborn" ] }, { "name": "Information Security", "courses": [ "HelmetJS" ] }, { "name": "Machine Learning with Python", "courses": [ "Machine Learning", "TensorFlow" ] } ] } Как парсить строки JSON в Python Python имеет встроенный модуль, который позволяет работать с данными в формате JSON. Вам необходимо будет импортировать модуль json. import json Если вам необходимо проинтерпретировать строку JSON, возвращающую словарь, то вы можете воспользоваться методом json.loads(). import json # assigns a JSON string to a variable called jess jess = '{"name": "Jessica Wilkins", "hobbies": ["music", "watching TV", "hanging out with friends"]}' # parses the data and assigns it to a variable called jess_dict jess_dict = json.loads(jess) # Printed output: {"name": "Jessica Wilkins", "hobbies": ["music", "watching TV", "hanging out with friends"]} print(jess_dict) Как парсить и читать файлы JSON в Python В данном примере мы имеем файл в формате JSON с именем fcc.json, который содержит те же данные, что и ранее, касающиеся курсов, которые предлагает сайт. Если вы хотите прочитать этот файл, то для начала вам нужно использовать встроенную в Python функцию open() с режимом чтения. Мы используем ключевое слово with, чтобы убедиться, что файл закрыт. with open('fcc.json', 'r') as fcc_file: Если файл не может быть открыт, то мы получим ошибку OSError. Это пример ошибки "FileNotFoundError" при опечатке в имени файла fcc.json. Затем мы можем проинтерпретировать файл, используя метод json.load() и присвоить его переменной с именем fcc_data. fcc_data = json.load(fcc_file) И в конце мы должны напечатать результат. print(fcc_data) Вот так будет выглядеть полный код: import json with open('fcc.json', 'r') as fcc_file: fcc_data = json.load(fcc_file) print(fcc_data) Как красиво напечатать данные JSON в Python Если мы посмотрим на то, как печатаются данные, то увидим, что все данные JSON печатаются в одной строке. Однако такой формат вывода может быть затруднительным для чтения. И чтобы это исправить, мы можем реализовать метод json.dumps() с параметром indent (отступ). В данном примере мы сделаем отступ в 4 пробела и будем печатать данные в более удобном для чтения формате. print(json.dumps(fcc_data, indent=4)) Также мы можем отсортировать ключи в алфавитном порядке, используя параметр sort_keys и установив его значение на True. print(json.dumps(fcc_data, indent=4, sort_keys=True)) Заключение JSON – это популярный способ структурирования данных, который используется для обмена информацией между веб-приложением и сервером. Если вам необходимо проинтерпретировать строку JSON, которая возвращает словарь, то вы можете использовать метод json.loads(). Если вам необходимо проинтерпретировать файл JSON, который возвращает словарь, то вы можете использовать метод json.load().
img
Всем привет! Сегодня в статье мы рассмотрим функцию обратного вызова Callback в Cisco Unified Communications Manager (CUCM) . Функция Callback используется для информирования вызывающего абонента о доступности вызываемого абонента, в случае если он был занят. Настройка Для начала нужно перейти в меню Cisco Unified Serviceability и там перейти во вкладку Tools → Service Activation. Здесь выбрать наш сервер и убедиться что напротив Cisco Extended Functions стоит галочка. Далее настроим Softkey (подробно об этом можно почитать в нашей статье). Для этого переходим меню Cisco Unified CM Administration и находим вкладку Device → Device Settings → Softkey Template. Здесь нажимаем Add New, выбираем шаблон Standard User и нажимаем Copy, после чего указываем имя нового шаблона и его описание. После этого в правом верхнем углу из выпадающего меню выбираем Configure Softkey Layout и нажимаем Go. В открывшемся окне из поля Unselected Softkeys нужно перенести в Selected Softkeys пункт Callback, нажав на кнопку со стрелкой вправо. Сделать это нужно для состояний On Hook, Connected Transfer и Ring Out, которые выбираются в поле Select a call state to configure. После этого применим шаблон кнопок к телефону. Переходим во вкладку → Phone и находим телефон, на который мы хотим применить шаблон. Шаблон нужно выбрать в строке Softkey Template, после чего нажать Save и Apply Config. В результате у нас на телефоне в нижней части экрана появится кнопка CallBack. Теперь посмотрим, как это работает. Делаем звонок с телефона А на телефон Б и телефон Б занят. На телефоне А нажимаем кнопку CallBack. После этого нажимаем OK и сообщение сменится на CallBack is activated. Чтобы убрать это сообщение нажимаем Exit. Чтобы деактивировать функцию нужно нажать кнопку Cancel. Теперь когда телефон Б освободится на телефоне А появится окно со звуковым сигналом с сообщением о доступности телефона Б. Чтобы сразу позвонить ему нужно нажать кнопку Dial.
img
Сегодня хотим предложить крутой функционал, который тебе захочется установить на своей IP – АТС Asterisk прямо сейчас! Речь пойдет про отправку записи разговора на адрес электронной почты со всеми причитающимися метаданными звонка. Работает это примерно вот так: ваш сотрудник поговорил по телефону, положил трубку, после чего, ответственному по электронной почте приходит письмо с записью разговора, датой и временем звонка, а также номерами А и Б. Настроить эту «фичу» очень легко. Приступаем к настройке. Bash скрипт для Asterisk Сам по себе скрипт написан на bash. Скрипт будет инициироваться сразу после окончания звонка и в него будут переданы нужные для работы переменные. Но об этом чуть позже: #!/bin/bash dt=$(date '+%m/%d/%Y %r'); echo -e "Привет! Появилась новая запись разговоров на нашем сервере Asterisk Звонок был совершен $dt Нам позвонил этот номер - $5 Вызов принял - $7 Запись разговора во вложении " | mail -a /var/spool/asterisk/monitor/$1/$2/$3/$6 -s "Новая запись разговоров" info@merionet.ru Пробежимся по переменным, которые будут относится к звонку и будут передаваться (все кроме $dt) с Asterisk: $1 - год звонка; $2 - месяц звонка; $3 - день звонка; $4 - дата и время в формате строки; $5 - источник звонка (звонящий); $6 - имя файла аудио – записи разговора; $7 - куда был совершен вызов; $dt - генерируем дату звонка; Переходим в консоль сервера Asterisk. Первым делом создаем файл с расширением .sh в него мы поместим наш скрипт: touch /var/lib/asterisk/bin/rectoemail.sh Даем файлу нужные права и разрешения: chown asterisk:asterisk rectoemail.sh chmod 774 rectoemail.sh Теперь открываем сам файл скрипта для редактирования: vim /var/lib/asterisk/bin/rectoemail.sh И добавляем скрипт в файл. Для того, чтобы сделать это, скопируйте скрипт из статьи. В режиме редактирования через vim нажмите «o» на клавиатуре, затем нажмите правую кнопку мыши – скрипт будет добавлен в файл. После этого, нажмите Esc на клавиатуре и комбинацию :x! + Enter для сохранения изменений. Готово. Доработка в FreePBX Теперь нужно поставить наш скрипт на автоматический запуск. Переходим в раздел Settings → Advanced Settings. Убеждаемся, что параметры Display Readonly Settings и Override Readonly Settings установлены в значение Yes. Теперь находим параметр Post Call Recording Script и добавляем в его поле следующую строчку: bash /var/lib/asterisk/bin/rectoemail.sh ^{YEAR} ^{MONTH} ^{DAY} ^{TIMESTR} ^{FROMEXTEN} ^{CALLFILENAME}.^{MIXMON_FORMAT} ^{ARG3} Готово. Сохраняем настройки и переходим к тестам:
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59