diff --git a/AddressToolsDK/addresstoolsdk.py b/AddressToolsDK/addresstoolsdk.py index fa9f059..9d0d40b 100644 --- a/AddressToolsDK/addresstoolsdk.py +++ b/AddressToolsDK/addresstoolsdk.py @@ -74,3 +74,4 @@ def initGui(self): def unload(self): QgsApplication.processingRegistry().removeProvider(self.provider) + \ No newline at end of file diff --git a/AddressToolsDK/addresstoolsdk_geocode_algorithm.py b/AddressToolsDK/addresstoolsdk_geocode_algorithm.py index ba8e054..5654afd 100644 --- a/AddressToolsDK/addresstoolsdk_geocode_algorithm.py +++ b/AddressToolsDK/addresstoolsdk_geocode_algorithm.py @@ -125,9 +125,10 @@ class DkGeokoderAlgorithm(QgsProcessingAlgorithm): OUTPUT = 'OUTPUT' INPUT = 'INPUT' - ADDRESS_TYPE = 'ADDRESS_TYPE' + ADDRESSTYPE = 'ADDRESSTYPE' EXPRESSION = 'EXPRESSION' + def initAlgorithm(self, config): """ Here we define the inputs and output of the algorithm, along @@ -145,7 +146,7 @@ def initAlgorithm(self, config): self.addParameter( QgsProcessingParameterEnum( - self.ADDRESS_TYPE, + self.ADDRESSTYPE, self.tr('Input adressetype'), options=[x[1] for x in self.DAWA_ADDRESS_TYPES], defaultValue=0 @@ -218,15 +219,21 @@ def processAlgorithm(self, parameters, context, feedback): # Get address string exp_context.setFeature(feature) address = expression.evaluate(exp_context) - + + try: # Geocode it - geocoded = geocoder.geocode(address) - if geocoded: - out_feature.setGeometry(QgsGeometry(geocoded["accesspoint"])) - out_feature[id_field_name] = geocoded["id"] - out_feature[cat_field_name] = geocoded["category"] - out_feature[denote_field_name] = geocoded["denotation"] - + geocoded = geocoder.geocode(address) + if geocoded: + out_feature.setGeometry(QgsGeometry(geocoded["accesspoint"])) + out_feature[id_field_name] = geocoded["id"] + out_feature[cat_field_name] = geocoded["category"] + out_feature[denote_field_name] = geocoded["denotation"] + except: + out_feature[id_field_name] = "null" + out_feature[cat_field_name] = " " + out_feature[denote_field_name] = "null" + message = "Fejl i en adresse "+ address +"\n" + feedback.pushInfo(message) # Add a feature in the sink sink.addFeature(out_feature, QgsFeatureSink.FastInsert) @@ -281,7 +288,8 @@ def shortDescription(self): def helpString(self): return self.tr("""
- Denne algoritme er udviklet af Septima og anvender DAWAs Datavask-API. + Dette plugin er udviklet af Septima og anvender DAWAs Datavask-API. + Bemærk, https://dawa.aws.dk/">DAWAs Datavask-API ikke længere bliver opdateret.
Med pluginet kan man oversætte en ustruktureret adressetekst til en officiel adresse fra Danmarks Adresseregister (DAR). @@ -302,14 +310,14 @@ def helpString(self):
Datavask svar angiver hvor sikkert svaret er, i form af en kategori A, B eller C. A indikerer eksakt match. - B indikerer et ikke helt eksakt match, men at resultatet stadig er sikkert. C betyder, at resultatet usikkert. + B indikerer et ikke helt eksakt match, men at resultatet stadig er sikkert. C betyder, at resultatet usikkert. Det er vigtigt at gennemgå adresserne, der har fået et 'C', da mange af dem vil være forkerte!
Datavask anvender også DAR’s historiske adresser som datagrundlag, således at adresser som er ændret også kan vaskes. Endvidere håndterer datavasken også adresser hvor der er anvendt såkaldte ’stormodtagerpostnumre’ fra PostNord.
- Læs mere på pluginets GitHub-side, hvor du også kan se et eksempel på anvendelse. + Læs mere på pluginets GitHub-side.
""") diff --git a/AddressToolsDK/metadata.txt b/AddressToolsDK/metadata.txt index a4f792d..dd835b5 100644 --- a/AddressToolsDK/metadata.txt +++ b/AddressToolsDK/metadata.txt @@ -7,13 +7,13 @@ name=Danish Address Tools # QgsNetworkAccessManager.blockingGet was introduced in 3.6 qgisMinimumVersion=3.6 description=This plugin provides tools to work with Danish addresses within the QGIS processing framework. -description[da]=Dette plugin tilbyder værktøjer til at arbejde med danske adresser i QGIS processing. -version=0.1 +description[da]=Dette plugin indeholder værktøjer til at arbejde med danske adresser i QGIS' processingsværktøjskasse. +version=0.3 author=Septima email=asger@septima.dk about=This plugin provides tools to work with Danish addresses within the QGIS processing framework. After installation of the plugin, you have to activate "Toolbox" in the "Processing"-menu. Then you can access the tools in the toolbox under the folder "Danske adresseværktøjer". For now there is one tool: Geocoding using DAWA. Read more on how to use the plugin in the help section of the tool's dialogue or at its Github repository. The plugin is developed and maintained by Septima. -about[da]=Dette plugin tilbyder værktøjer til at arbejde med danske adresser i QGIS processing. For at bruge dette værktøj, skal du efter installation af pluginet først aktivere "Værktøjskassen" under "Processeringsmenuen". Derefter findes værktøjerne i værktøjskassen under "Danske adresseværktøjer". Pt er der eet værktøj: Geokod adresser med DAWA. Læs mere om hvordan pluginet bruges i hjælpesektion i værktøjets dialogboks, eller på dets Github repository. Pluginet er udviklet og vedligeholdes af Septima. +about[da]=Dette plugin indeholder værktøjer til at arbejde med danske adresser i QGIS' processingsværktøjskasse. Dette plugin lægger sig i QGIS' processeringsværktøj. For at bruge dette plugin, skal du efter installation af pluginet aktivere "Værktøjskassen" under "Processeringsmenuen" (Hvis processeringsmenuen ikke vises, så kan det være nødvendigt i plugin-dialogen at aktivere 'Processing'). Derefter findes adresseværktøjerne i værktøjskassen under "Danske adresseværktøjer". Pt er der eet værktøj: Geokod adresser med DAWA. Læs mere om hvordan pluginet bruges i værktøjets dialog, eller på dets Github repository. Pluginet er udviklet og vedligeholdes af Septima. tracker=https://github.com/Septima/qgis-addresstoolsdk/issues repository=https://github.com/Septima/qgis-addresstoolsdk @@ -23,8 +23,9 @@ repository=https://github.com/Septima/qgis-addresstoolsdk hasProcessingProvider=yes # Uncomment the following line and add your changelog: -changelog=Version 0.1: Initial version with one algorithm "Geokod danske adresser med DAWA" - +changelog=2025-01-06, vs. 0.3: Improved description of the plugin 2024-05-01. Work funded by Septima. + 2024-05-01, vs. 0.2 beta: Improved description of the plugin 2024-05-01, vs. 0.2 beta: If an address cannot be geocoded, empty fields are returned. Improved error messages that informs the user which adresses that cause errors, and spelling mistakes. Work funded by Septima. + 2019-09-12, vs. 0.1: Initial version with one algorithm "Geokod danske adresser med DAWA" # Tags are comma separated with spaces allowed tags=geocoding,geokodning,geokod,geokode,geokoder,Danmark,danske,adresse,adresser,adressevask,dawa @@ -44,7 +45,7 @@ deprecated=False # plugin_dependencies= Category of the plugin: Raster, Vector, Database or Web -# category= +# category=Processing # If the plugin can run on QGIS Server. server=False