Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions AddressToolsDK/addresstoolsdk.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,3 +74,4 @@ def initGui(self):

def unload(self):
QgsApplication.processingRegistry().removeProvider(self.provider)

34 changes: 21 additions & 13 deletions AddressToolsDK/addresstoolsdk_geocode_algorithm.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -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)

Expand Down Expand Up @@ -281,7 +288,8 @@ def shortDescription(self):
def helpString(self):
return self.tr("""
<p>
Denne algoritme er udviklet af <a href="https://www.septima.dk">Septima</a> og anvender <a href="https://dawa.aws.dk/">DAWA</a>s Datavask-API.
Dette plugin er udviklet af <a href="https://www.septima.dk">Septima</a> og anvender <a href="https://dawa.aws.dk/">DAWA</a>s Datavask-API.
Bemærk, https://dawa.aws.dk/">DAWA</a>s Datavask-API ikke længere bliver opdateret.
</p>
<p>
Med pluginet kan man oversætte en ustruktureret adressetekst til en officiel adresse fra Danmarks Adresseregister (DAR).
Expand All @@ -302,14 +310,14 @@ def helpString(self):
</p>
<p>
Datavask svar angiver hvor sikkert svaret er, i form af en <b>kategori</b> 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!
</p>
<p>
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.
</p>
<p>
Læs mere på <a href="https://github.com/Septima/qgis-addresstoolsdk">pluginets GitHub-side</a>, hvor du også kan se et eksempel på anvendelse.
Læs mere på <a href="https://github.com/Septima/qgis-addresstoolsdk">pluginets GitHub-side</a>.
</p>
""")

Expand Down
13 changes: 7 additions & 6 deletions AddressToolsDK/metadata.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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 protected]

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
Expand All @@ -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
Expand All @@ -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
Expand Down