Mercurial > hg > orthanc
changeset 353:61e4c62b8c35
samples of anonymization
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 28 Jan 2013 16:58:07 +0100 |
parents | cc9eddbf07d3 |
children | 4d76fce206ef |
files | Resources/Samples/Python/AnonymizeAllPatients.py Resources/Samples/Python/DownloadAnonymized.py |
diffstat | 2 files changed, 34 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/Resources/Samples/Python/AnonymizeAllPatients.py Mon Jan 28 16:43:49 2013 +0100 +++ b/Resources/Samples/Python/AnonymizeAllPatients.py Mon Jan 28 16:58:07 2013 +0100 @@ -22,4 +22,6 @@ if not name.startswith('anonymized'): # Trigger the anonymization - RestToolbox.DoPost('%s/patients/%s/anonymize' % (URL, patient)) + RestToolbox.DoPost('%s/patients/%s/anonymize' % (URL, patient), + { 'Keep' : [ 'SeriesDescription', + 'StudyDescription' ] })
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Resources/Samples/Python/DownloadAnonymized.py Mon Jan 28 16:58:07 2013 +0100 @@ -0,0 +1,31 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- + + +URL = 'http://localhost:8042' + +# +# This sample code will download a ZIP file for each patient that has +# been anonymized in Orthanc. +# + +import os +import os.path +import sys +import RestToolbox + +# Loop over the patients +for patient in RestToolbox.DoGet('%s/patients' % URL): + + # Ignore patients whose name starts with "Anonymized", as it is + # the result of a previous anonymization + infos = RestToolbox.DoGet('%s/patients/%s' % (URL, patient)) + name = infos['MainDicomTags']['PatientName'].lower() + if name.startswith('anonymized'): + + # Trigger the download + print 'Downloading %s' % name + zipContent = RestToolbox.DoGet('%s/patients/%s/archive' % (URL, patient)) + f = open(os.path.join('/tmp', name + '.zip'), 'wb') + f.write(zipContent) + f.close()