obspy.clients.fdsn.client.Client
- class Client(base_url='EARTHSCOPE', major_versions=None, user=None, password=None, user_agent='ObsPy/1.4.1.post0+358.gf5c9534772 (Linux-6.5.0-1025-azure-x86_64-with-glibc2.35, Python 3.9.19)', debug=False, timeout=120, service_mappings=None, force_redirect=False, eida_token=None, _discover_services=True, use_gzip=True)[source]
Bases:
object
FDSN Web service request client.
For details see the
__init__()
method.
Attributes
Regex for HEX4 |
|
Regex for IPv4 |
|
Regex for IPv6 |
|
Regex for UINT8 |
|
Regex for checking the validity of URLs |
Public Methods
Query the event service of the client. |
|
Query the station service of the FDSN client. |
|
Query the station service of the client. |
|
Query the dataselect service of the client. |
|
Query the dataselect service of the client. |
|
Get full version information of webservice (as a tuple of ints). |
|
Print a more extensive help for a given service. |
|
Set user and password resulting in subsequent web service requests for waveforms being authenticated for potential access to restricted data. |
|
Fetch user and password from the server using the provided token, resulting in subsequent web service requests for waveforms being authenticated for potential access to restricted data. |
Private Methods
Warning
Private methods are mainly for internal/developer use and their API might change without notice.
- Client._attach_dataselect_url_to_stream(st)[source]
Attaches the actually used dataselet URL to each Trace.
- Client._attach_responses(st)[source]
Helper method to fetch response via get_stations() and attach it to each trace in stream.
- Client._build_url(service, resource_type, parameters={})[source]
Builds the correct URL.
Replaces “query” with “queryauth” if client has authentication information.
- Client._discover_services()[source]
Automatically discovers available services.
They are discovered by downloading the corresponding WADL files. If a WADL does not exist, the services are assumed to be non-existent.
- Client._get_webservice_versionstring(service)[source]
Get full version information of webservice as a string.
Special Methods
- Client.__delattr__(name, /)
Implement delattr(self, name).
- Client.__dir__()
Default dir() implementation.
- Client.__eq__(value, /)
Return self==value.
- Client.__format__(format_spec, /)
Default object formatter.
- Client.__ge__(value, /)
Return self>=value.
- Client.__getattribute__(name, /)
Return getattr(self, name).
- Client.__gt__(value, /)
Return self>value.
- Client.__hash__()
Return hash(self).
- Client.__init__(base_url='EARTHSCOPE', major_versions=None, user=None, password=None, user_agent='ObsPy/1.4.1.post0+358.gf5c9534772 (Linux-6.5.0-1025-azure-x86_64-with-glibc2.35, Python 3.9.19)', debug=False, timeout=120, service_mappings=None, force_redirect=False, eida_token=None, _discover_services=True, use_gzip=True)[source]
Initializes an FDSN Web Service client.
>>> client = Client("EARTHSCOPE") >>> print(client) FDSN Webservice Client (base url: http://service.iris.edu) Available Services: 'dataselect' (v...), 'event' (v...), 'station' (v...), 'available_event_catalogs', 'available_event_contributors' Use e.g. client.help('dataselect') for the parameter description of the individual services or client.help() for parameter description of all webservices.
- Parameters:
base_url (str) – Base URL of FDSN web service compatible server (e.g. “http://service.iris.edu”) or key string for recognized server (one of ‘AUSPASS’, ‘BGR’, ‘EARTHSCOPE’, ‘EIDA’, ‘EMSC’, ‘ETH’, ‘GEOFON’, ‘GEONET’, ‘GFZ’, ‘ICGC’, ‘IESDMC’, ‘INGV’, ‘IPGP’, ‘IRIS’, ‘IRISPH5’, ‘ISC’, ‘KNMI’, ‘KOERI’, ‘LMU’, ‘NCEDC’, ‘NIEP’, ‘NOA’, ‘NRCAN’, ‘ODC’, ‘ORFEUS’, ‘RASPISHAKE’, ‘RESIF’, ‘RESIFPH5’, ‘SCEDC’, ‘TEXNET’, ‘UIB-NORSAR’, ‘USGS’, ‘USP’).
major_versions (dict) – Allows to specify custom major version numbers for individual services (e.g. major_versions={‘station’: 2, ‘dataselect’: 3}), otherwise the latest version at time of implementation will be used.
user (str) – User name of HTTP Digest Authentication for access to restricted data.
password (str) – Password of HTTP Digest Authentication for access to restricted data.
user_agent (str) – The user agent for all requests.
debug (bool) – Debug flag.
timeout (float) – Maximum time (in seconds) to wait for a single request to receive the first byte of the response (after which an exception is raised).
service_mappings (dict) – For advanced use only. Allows the direct setting of the endpoints of the different services. (e.g.
service_mappings={'station': 'http://example.com/test/stat/1'}
) Valid keys areevent
,station
, anddataselect
. This will overwrite thebase_url
andmajor_versions
arguments. For all services not specified, the default default locations indicated bybase_url
andmajor_versions
will be used. Any service that is manually specified asNone
(e.g.service_mappings={'event': None}
) will be deactivated.force_redirect (bool) – By default the client will follow all HTTP redirects as long as no credentials (username and password) are given. If credentials are given it will raise an exception when a redirect is discovered. This is done to improve security. Settings this flag to
True
will force all redirects to be followed even if credentials are given.eida_token (str) – Token for EIDA authentication mechanism, see http://geofon.gfz-potsdam.de/waveform/archive/auth/index.php. If a token is provided, options
user
andpassword
must not be used. This mechanism is only available on select EIDA nodes. The token can be provided in form of the PGP message as a string, or the filename of a local file with the PGP message in it._discover_services (bool) – By default the client will query information about the FDSN endpoint when it is instantiated. In certain cases, this may place a heavy load on the FDSN service provider. If set to
False
, no service discovery is performed and default parameter support is assumed. This parameter is experimental and will likely be removed in the future.use_gzip (bool) – Can be set to
False
to opt out of gzip compression, i.e. not tell the server that gzip compressed response is acceptable which should make the server not try gzip compression on results. Can be used if servers experience server side issues with gzip compression but results in downloads being larger in size.
- Client.__init_subclass__()
This method is called when a class is subclassed.
The default implementation does nothing. It may be overridden to extend subclasses.
- Client.__le__(value, /)
Return self<=value.
- Client.__lt__(value, /)
Return self<value.
- Client.__ne__(value, /)
Return self!=value.
- Client.__new__(**kwargs)
- Client.__reduce__()
Helper for pickle.
- Client.__reduce_ex__(protocol, /)
Helper for pickle.
- Client.__repr__()
Return repr(self).
- Client.__setattr__(name, value, /)
Implement setattr(self, name, value).
- Client.__sizeof__()
Size of object in memory, in bytes.
- Client.__subclasshook__()
Abstract classes can override this to customize issubclass().
This is invoked early on by abc.ABCMeta.__subclasscheck__(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).