Ленивый смех приходит, когда вы слышите о цифровой трансформации? Вы больше не верите в обещания открытых данных? Как вы думаете, уродливо разтратить государственные деньги в «Порталито»? Вы находитесь в нужном месте.
План состоит в том, чтобы создать приличные API, которые консультируются с публичными источниками данных (например, веб -страниц) для использования административных услуг в программном порядке.
Попробуйте проконсультироваться с некоторыми примерами в реальной демонстрации:
Есть много услуг, которые можно включить, и я не смогу сделать это в одиночку. Сотрудничать!
Проект разделен на несколько пакетов:
egov-api-server использует этот пакет.HTTP -сервер, который открывает API GraphQL для доступа к реальным публичным данным (попробуйте демонстрацию). Он разработан на Node.js (TypeScript) с Apollo GraphQL и является самым простым способом доступа к данным.

Вы можете проконсультироваться с схемой данных. Я начал с данных из географических мест и телекоммуникационных услуг, доступных в этой области (антенны, цифровые телевизионные каналы, доступные сети).
Вам просто нужен node.js 10+. Вы должны инициализировать проект после закрытия его в первый раз:
git clone [email protected]:palmerabollo/egov.git
cd egov
npm install
И выполнить это:
npm run start:api-server
На http: // localhost: 4000 у вас будет доступ к веб -сайту к API GraphQL для выполнения ваших запросов. Если вы чувствуете, что в Руководстве для сотрудников есть более подробная информация о процессе разработки.
Примечание. Некоторые администрации имеют небезопасные серверы, затронутые уязвимостью (CVE-2009-3555) в течение более десяти лет. Это предотвращает поддержку node.js> 16 / opensl 3.x. Необходимо выяснить, можно ли его игнорировать с помощью переменной
SSL_OP_LEGACY_SERVER_CONNECT.
Он включает в себя реализацию поставщиков данных: консультационные услуги, которые извлекают данные общественных источников. Некоторые услуги консультируются с данными по запросу (онлайн), а другие используют локальные данные (офлайн).
Создать новый сервис очень просто. Следующие в настоящее время разработаны. Проверьте и предложите новые идеи в проблемах или отправьте свой запрос на привлечение с новыми услугами. Это очень легко.
| Услуга | Сорт | Данные происхождение | Онлайн |
|---|---|---|---|
| Поиск населения и почтовых кодов Категория: Общая | PostalCodeService | Geonames.org | ❎ (Локальный файл) |
| Местоположение мобильных телефонных антенн Категория: телекоммуникация | AntennaService | geoportal.minetur.gob.es | ✅ (API) |
| Проверка покрытия от 4 г до 800 МГц. Категория: телекоммуникация | NetworkService | www.llega800.es | ✅ (API) |
| Телевизионные сигналы по географическому положению Категория: телекоммуникация | DigitalTelevisionService | www.televisiongital.gob.es | ✅ (HTML) |
| Дорожные радары Категория: трафик | TrafficRadarService | www.dgt.es | ✅ (HTML, PDF) |
| Информация о транспортном средстве Категория: трафик | TrafficVehicleService | www.dgt.es | ✅ (HTML, PDF) |
Примеры программного использования консультационных услуг, доступных в egov-data-providers .
import * as egov from '@egov/data-providers' ;
let service = new egov . AntennaService ( ) ;
let antennas = await service . findAntennas ( 41.73 , - 5.32 ) ;
console . table ( antennas , [ 'code' , 'latitude' , 'longitude' ] ) ;
// output
// ┌─────────┬───────────────────────────────────┬───────────┬───────────┐
// │ (index) │ code │ latitude │ longitude │
// ├─────────┼───────────────────────────────────┼───────────┼───────────┤
// │ 0 │ 'VODAFONE ESPAÑA, S.A. - 144588' │ 41.471472 │ -4.989911 │
// │ 1 │ 'VODAFONE ESPAÑA, S.A. - 144589' │ 41.479806 │ -5.048222 │
// │ 2 │ 'ORANGE ESPAGNE, SAU - CYLR2147A' │ 41.471472 │ -4.989911 │
// │ 3 │ 'ORANGE ESPAGNE, SAU - CYLR2223B' │ 41.479806 │ -5.048222 │
// └─────────┴───────────────────────────────────┴───────────┴───────────┘Код EGOV разрабатывается на node.js (TypeScript). Те, кто хочет внести свой вклад в новых поставщиков данных на других языках программирования, имеют возможность выполняться как независимые процессы, которые выявляют интерфейс HTTP. Эти процессы адаптера могут получить данные, обрабатывать их и предлагать их EGOV через этот интерфейс HTTP.
Существует доказательство концепции для получения трафик с помощью процесса Python, который лом данных DGT Radars. Этот процесс выполняется как без серверная функция в AWS Lambda.
Data-Provider- (http)-> Adapter- (http scrape)-> DataSource
Почему без сервера? Потому что это способ выполнить экономически устойчивый проект, не прося сейчас деньги.
Copyright 2019 - Гвидо Гарсия (Guido.garcia в Protonmail Dot Com)
Лицензирован в соответствии с GNU, общая публичная лицензия, версия 2.0 («Лицензия»); Вы не можете использовать этот файл, кроме как в соответствии с лицензией.
Саб -информация почтовые коды предоставляются Geonames по лицензии Creative Commons Attribution 4.0.