In [1]:
"""Python WPS execute"""
from owslib.wps import WebProcessingService, monitorExecution
from os import system

In [2]:
import owslib
owslib.__version__ # version must be >=0.10.3


Out[2]:
'0.11-dev'

In [3]:
#wps = WebProcessingService(url="http://birdhouse-lsce.extra.cea.fr:8093/wps", verbose=False)
wps = WebProcessingService(url="http://localhost:8093/wps", verbose=False)

In [4]:
print wps.identification.title


Flyingpigeon

In [5]:
for process in wps.processes:
    print '%s : \t %s' % (process.identifier, process.abstract)


subset_continents : 	 Returns only the selected polygon for each input dataset
subset_countries : 	 Returns only the selected polygon for each input dataset
subset_regionseurope : 	 Returns the selected European administrative region defined in the GADM database (v2.5) for each input dataset.
subset_points : 	 Extract Timeseries for specified coordinates from gridded datasets
indices_simple : 	 Climate indices based on one single input variable.
indices_percentile : 	 Climate indices based on one single input variable and the percentile of a reference period.
weatherregimes_reanalyse : 	 Weather Regimes based on pressure patterns, fetching selected Realayses Datasets
weatherregimes_model : 	 Weather Regimes based on pressure patterns, fetching selected Realayses Datasets
weatherregimes_projection : 	 Weather Regimes detection based on trained reference statistics
analogs_detection : 	 Search for days with analogue pressure pattern for reanalyses data sets
analogs_model : 	 Search for days with analogue pressure pattern in a climate model data set
analogs_compare : 	 Search in a dataset for days with analogue pressure pattern for a given period in a reanalyses dataset
analogs_viewer : 	 Visualisation of text output of analogue process
segetalflora : 	 Species biodiversity of segetal flora. Imput files: variable:tas , domain: EUR-11 or EUR-44
sdm_gbifsearch : 	 Species distribution model for tree species based on GBIF presence/absence data and climate indices
sdm_csv : 	 Species distribution model for tree species based on GBIF presence/absence data and climate indices
robustness : 	 Calculates the robustness as the ratio of noise to signal in an ensemle of timeseries
plot_timeseries : 	 Plots of the file means over time. Spaghetti and uncertainty plot
fetch : 	 This process downloads resources (limited to 50GB)             to the local file system of the birdhouse compute provider
wps_c4i_simple_indice : 	 Computes single input indices of temperature TG, TX, TN, TXx, TXn, TNx, TNn, SU, TR, CSU, GD4, FD, CFD, ID, HD17; of rainfall: CDD, CWD, RR, RR1, SDII, R10mm, R20mm, RX1day, RX5day; and of snowfall: SD, SD1, SD5, SD50. This processes is also available in Climate4Impact and uses ICCLIM.
spatial_analog : 	 Spatial analogs based on climate indices

In [6]:
files = []

for i in range(1,16): 
    files.append('file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p%s_19600101-20131230.nc' % (i))

In [7]:
files


Out[7]:
['file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p1_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p2_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p3_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p4_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p5_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p6_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p7_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p8_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p9_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p10_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p11_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p12_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p13_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p14_19600101-20131230.nc',
 'file:///home/estimr2/EUCLEIA/indices/RX5day/DJF/RX5day_DJF_HadGEM3-A-N216_historical_r1i1p15_19600101-20131230.nc']

In [41]:
from os.path import join

execute = wps.execute(
    identifier="robustness", 
    inputs=[
       ("resource",files[0]),
       ("resource",files[1]),
       ("resource",files[2]),
       ("resource",files[3]),
       ("resource",files[4]),
       ("resource",files[5]),
       ("resource",files[6]),
       ("resource",files[7]),
       ("resource",files[8]),
       ("resource",files[9]),
       ("resource",files[10]),
       ("resource",files[11]),
       ("resource",files[12]),
       ("resource",files[13]),
       ("resource",files[14])
           ])

monitorExecution(execute, sleepSecs=5)

print execute.getStatus()

for o in execute.processOutputs:
    print o.reference


ProcessSucceeded
http://localhost:8090/wpsoutputs/flyingpigeon/output_graphic-9d8371b4-79a7-11e6-8845-b50b1f12a4ed.png
http://localhost:8090/wpsoutputs/flyingpigeon/output_high-9d8371b4-79a7-11e6-8845-b50b1f12a4ed.nc
http://localhost:8090/wpsoutputs/flyingpigeon/output_text-9d8371b4-79a7-11e6-8845-b50b1f12a4ed.txt
http://localhost:8090/wpsoutputs/flyingpigeon/output_low-9d8371b4-79a7-11e6-8845-b50b1f12a4ed.nc
http://localhost:8090/wpsoutputs/flyingpigeon/output_signal-9d8371b4-79a7-11e6-8845-b50b1f12a4ed.nc

In [44]:
graphic = execute.processOutputs[0].reference

from IPython.display import Image
from IPython.core.display import HTML 
Image(url= graphic )


Out[44]:

In [ ]: