Как проанализировать данные массива JSON из GMail в электронную таблицу Google?

570
Indrid Cold

Хорошо, я надеюсь пояснить, объясняя, что я хотел бы сделать ... Я установил персональную станцию ​​ADSB (помогая мне и в других задачах), поместив антенну для 1090, Raspberry Pi 3B, фильтр и усилитель на мою крышу, Я выполняю задание dump1090-mutable круглосуточно, обслуживая 5-6 онлайн-сервисов полетной информации. С помощью пакета 'jq' (разбирая aircrafts.json из данных dump1090) и после установки пакетов 'mailutils' и 'ssmtp', чтобы уведомлять меня по почте при обнаружении пользовательского ИКАО, имени рейса или кода SQUAWK приемоответчика с помощью С помощью CRON и некоторых моих скриптов я получаю уведомления по электронной почте:

{  "hex": "400af7",  "squawk": "1000",  "flight": "EZY42KU ",  "lat": 42.692322,  "lon": 10.078458,  "nucp": 7,  "seen_pos": 3.7,  "altitude": 37000,  "vert_rate": 960,  "track": 318,  "speed": 409,  "category": "A0",  "mlat": [],  "tisb": [],  "messages": 402,  "seen": 0,  "rssi": -27.5  } 

Это тело сообщения с обнаруженным массивом данных ADSB, проанализированным с помощью 'jq'. С помощью службы IFTTT я установил, что для каждой почты такого рода добавляется новая запись в таблице Google, чтобы архивировать и регистрировать контакты и аварийные СКВОЧКИ ...

Но лучший результат, который я получил до сих пор, это: столбец A для даты и времени и столбец B для ВСЕГО тела письма - я был бы признателен, если бы кто-нибудь мог сказать мне, как назначить для КАЖДОГО столбца раздел массив, как, например, B для шестнадцатеричного, C для squawk, C для названия рейса и т. д. в электронной таблице Google.

Спасибо!

1
Это похоже на огромные усилия по созданию такой системы! Однако, мне интересно, не было ли проще обновить электронную таблицу Google напрямую из сценария, который отправляет электронное письмо? С некоторыми знаниями Python и этой документацией: https://developers.google.com/sheets/api/quickstart/python это не должно быть сложно. wvxvw 6 лет назад 0
Прежде всего, спасибо за ваш комментарий - мне понравилась идея почтовых уведомлений, чтобы предупредить меня, когда не перед ПК ... если нет способов сделать это, или если это слишком сложно, я могу попробовать прямо из BASH скрипт для GDrive / Google Spreadsheet ... есть идеи для правильного разбора? Indrid Cold 6 лет назад 0
Я недостаточно осведомлен об этой конкретной библиотеке Python, но мне пришлось иметь дело с электронными таблицами Google около 6-7 лет назад. Я мог бы попытаться написать что-нибудь простое завтра. Python также имеет библиотеку IMAP, которая позволяет подключаться к вашему почтовому ящику и читать электронную почту. wvxvw 6 лет назад 0
Это было бы здорово ... спасибо друг. Indrid Cold 6 лет назад 0
@wvxvw Я делюсь с вами сценарием, который я использую - этот файл перехватывает и анализирует массивы данных из aircraft.json, файл обновляется с помощью задачи dump1090-mutability, проверяющей трафик полета: #! / bin / bash list = (7500 7600 7700) для значения в "$ " do curl http://127.0.0.1/dump1090/data/aircraft.json 2> / dev / null | jq '.aircraft [] | select (.squawk == "'$ value'") | «. # echo $ done Indrid Cold 6 лет назад 0
@wvxvw в сценарии ранее, я проверяю только полеты с кодами аварийного крика. Теперь, как проанализировать каждую результирующую строку массива во всех столбцах электронной таблицы Google (если я выберу прямой переход от bash к электронной таблице, оставляя отрывок GMail)? - чтобы сделать вещи более «солеными», я видел, что если в одно и то же время будет видно больше контактов, зарегистрированные массивы станут множественными. Indrid Cold 6 лет назад 0
Привет, извините за медленный ответ. Я пытался что-то сделать с https://developers.google.com/sheets/api/quickstart/python, но это действительно куча мусора ... :( Это так плохо, что это совершенно неработоспособно. альтернативная библиотека Python, которая работает с GooleSheets, но не поддерживает новый API, и весь API Google представляет собой один большой беспорядок ... Я провел день, пытаясь редактировать электронную таблицу, но до сих пор не мог даже подключить ... wvxvw 6 лет назад 0
Это на полпути: он может только обновлять электронную таблицу, но пока не может подключиться и читать из GMail: https://github.com/wvxvw/mail2spreadsheet Я поместил некоторые инструкции в файл readme, который должен отображаться в титульная страница. wvxvw 6 лет назад 0

0 ответов на вопрос

Похожие вопросы