Ils ont collecté pour tout le monde "Habrom" le livre de référence "Par qui il a été délivré ..." pour les passeports. Télécharger sur la santé



Il y a quelques mois, nous avons expérimenté: sera-t-il possible de collecter un répertoire approprié des unités délivrant des passeports russes à Habr? La chose est utile: beaucoup de gens ont besoin de ces données, il n'y a pas de source canonique et les sources existantes sont très moyennes.

Et vous savez, tout a fonctionné. Le répertoire utilisable est prêt, vous pouvez le télécharger et l'utiliser. Et nous avons également fait des astuces pour accélérer l'entrée des unités dans les formulaires électroniques.

CSV "nu" - dans le domaine public


La référence compilée et nettoyée que nous avons publiée sur GitHub. A l'intérieur, tout est simple, CSV avec deux champs:

  • code départemental;
  • nom de l'unité.

Réside ici github.com/hflabs/fms-unit/releases/latest .

Il existe également des conseils prêts à l'emploi pour les formulaires de saisie (en outre, gratuits)


Nous avons réuni des unités pour créer un service prêt à l'emploi - conseils pour les formulaires de saisie. Et les voilà prêts.

«Astuces» DaData.ru peut être intégré dans le site, CRM ou CMS et être considéré comme un boursier attentionné: l'utilisateur n'a qu'à entrer le code de l'unité, et le nom remplira le service.


Tout le monde semble détester remplir le nom de l'unité. Nous avons essayé d'alléger les souffrances des gens.

Même les «astuces» tirent la région et le type d'unité du code, parfois de manière pratique. Voici une brève spécification de la réponse.
Le titreLa description
valeurValeur sur une seule ligne (comme indiqué dans la liste des invites)
data.codeCode d'unité
data.nameLe nom de l'unité dans le boîtier instrumental ("qui l'a émis?")
data.region_codeCode de région
data.typeType d'unité:

  • 0 - unité FMS;
  • 1 - GUVD ou le Ministère des Affaires Intérieures de la région;
  • 2 - Quartier ou ville ATC ou ATS;
  • 3 - poste de police.
Nous donnons gratuitement jusqu'à 10 000 requêtes par jour aux «Conseils», ce sont 300 formulaires remplis. Plus - dans le cadre d'un abonnement, à partir de 5 000 ₽ par an. Il fonctionne via jQuery-plugin, API ou composants pour différents CRM, CMS, "1C" et plus encore.

Les détails sont à dadata.ru/suggestions/outward/fms_unit/ .

"Habr" a beaucoup aidé avec les données


Première question de ceux qui entendent parler du projet: "Vraiment, via Habr, l'avez-vous récupéré?" Non seulement "Habr" a aidé, mais la contribution des colporteurs est grande et étendue. Nous sommes reconnaissants et un peu surpris: la première fois que nous nous sommes tournés vers la communauté, et immédiatement un tel résultat.

Au départ, nous avons eu quelques développements. Mais, tout d'abord, loin d'une référence complète. Deuxièmement, je voulais vérifier dans quelle mesure les données sont adéquates pour les vrais passeports.

Beaucoup ont envoyé des unités de leur passeport via le formulaire de collecte lorsque nous avons lancé un cri. Ils ont envoyé un et cinq à dix enregistrements chacun. Des héros qui ne sont pas trop paresseux pour conduire tout cela avec leurs mains - respect.

Trois personnes offertes dans une base de données personnelle de taille respectable. Sympathique et gratuit.


Ceux qui sont inquiets pour la sécurité: tous les répertoires ont été envoyés de manière anonyme, pas un octet de données personnelles

Ces dons ont fait avancer les choses de manière significative. En conséquence, après trois semaines, nous avons collecté le volume à partir duquel il n'est pas dommage de fabriquer un produit adapté à un usage industriel.

Le chemin du succès - «Un tas de données brutes + 300 regekspov + un petit pitonochki»


Ainsi, les données brutes sont entre les mains du produit alimentaire Nadgeon Dadata. Il a décrit d'autres danses avec une citation du titre. Tout ce que nous avons collecté a traversé une série de merveilleuses transformations.

Pour commencer, normalisé les noms des unités. Ici, je devais travailler avec ferveur avec un fichier. Par exemple, dans les passeports «vivants», les numéros des unités territoriales sont indiqués par «Non»: «TP n ° 1 à G. Khimki ...». Il en va de même dans la majorité des répertoires collectés, sauf un - il contient tous les numéros sans "Non": "TP 1 dans G. Khimki ...". Je devais intégrer.

Les années se sont effondrées. Dans plusieurs répertoires, les noms des unités sont «flous» par année, même lorsqu'ils ne changent pas avec le temps.

500-168, . . ,2007
500-168, . . ,2008
500-168, . . ,2009
500-168, . . ,2010

Nous avons combiné ces enregistrements en les liant à une période: dans l'exemple ci-dessus, sur quatre enregistrements, nous en avons obtenu un avec les dates «2007-2010».

Nous avons collecté un autre livre de référence - «2018+». En 2018, un coup d'État s'est produit - le nom du département «suprême» du ministère des Affaires intérieures de la région n'est plus inscrit sur les passeports. Par conséquent, dans un document publié dans le territoire de Krasnoyarsk, quel que soit le code, ils indiquent «GU du ministère des Affaires intérieures de la Russie dans le territoire de Krasnoyarsk».

Nous avons pris tous les codes collectés, divisés par régions et leur avons généré les mêmes noms dans le style de 2018. Les noms ont été tirés des répertoires collectés, quelque chose a dû être recherché sur Internet. Il s'est avéré quelque chose comme ça.

240-001, ,2018
240-002, ,2018
240-003, ,2018


Les années ont été supprimées. Il s'est avéré qu'il y avait un gâchis parfait dans les répertoires: quelque part, il y a des années, quelque part pas. Il reste soit partout à supprimer les années pour une référence plus complète, soit à ne laisser que des unités au fil des années pour le plaisir de savoir ce qui n'est pas clair. Choisissez une référence plus complète.

Les répertoires ont été combinés , les données en extase ont fusionné. Ils ont soigneusement frotté le résultat avec un chiffon, l'ont peigné et l'ont rappelé: par exemple, "RA", si nécessaire, a été transformé en "République de l'Altaï" et une douzaine d'autres modifications ont été apportées.

Et maintenant, le guide est prêt. Utilisez-le, vous l'avez fait pour vous-même (en fait, vous l'avez fait pour vous :).

Quelques subtilités pour corrosif


Il existe de nombreuses entrées dans le répertoire avec les mêmes codes d'unité. Cela est dû au fait que dans différentes années dans les passeports, l'orthographe de la même unité était différente. Nous avons combiné des options similaires, mais avons laissé des options très différentes: laissez l'utilisateur choisir comment il l'a dans le document.

Il se peut que votre passeport et votre répertoire soient écrits un peu différemment. Sans normalisation minimale, chaque unité aurait un tel ensemble d'options similaires que vous pourriez trouver la bonne. Par conséquent, nous avons réduit le «DÉPARTEMENT DES AFFAIRES INTERNES» à «ATC», «VILLES» et «MONTAGNE». - à «G.», «DÉPARTEMENT DE PASSEPORT ET DE VISA» - à «OPVS», etc.


Si vous commencez à taper un nom, "Astuces" contribuera également

Mais! Aucune loi ni aucun règlement n'exige que le nom de l'unité dans les documents lettre par lettre coïncide avec l'option du passeport. Les abréviations et omissions sont autorisées. L'essentiel est que les autres détails soient approximativement similaires et identiques: la série, le numéro, la date, le code d'unité.

Des erreurs peuvent nous être signalées dadata.ru/fix/fms . Indiquez le code et le nom de l'enregistrement du problème et écrivez dans le commentaire ce qui ne va pas. Corrigez et présentez un guide mis à jour pour tout le monde. Ou envoyez des demandes de pool à GitHub.

Naturellement, vous pouvez corriger le CSV avec vos mains si vous avez un manuel nu sans "Astuces". Mais on ne sait pas exactement comment tout se bloquera si vous nous prenez la prochaine version du répertoire.

En général, utilisez votre santé:


Si vous partagez l'article, aidez les personnes qui recherchent un répertoire d'unités de passeports. Souffrant de malades, ils vous en seront reconnaissants.

Source: https://habr.com/ru/post/fr448504/


All Articles