Coverage for /opt/obspy/update-docs/src/obspy/obspy/earthworm/client : 97%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
# -*- coding: utf-8 -*- Earthworm Wave Server client for ObsPy.
:copyright: The ObsPy Development Team (devs@obspy.org) & Victor Kress :license: GNU General Public License (GPLv2) (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
.. seealso:: http://www.isti2.com/ew/PROGRAMMER/wsv_protocol.html """
""" A Earthworm Wave Server client.
:type host: str :param host: Host name of the remote Earthworm Wave Server server. :type port: int :param port: Port of the remote Earthworm Wave Server server. :type timeout: int, optional :param timeout: Seconds before a connection timeout is raised (default is ``None``). :type debug: bool, optional :param debug: Enables verbose output of the connection handling (default is ``False``). """ """ Initializes a Earthworm Wave Server client.
See :class:`obspy.earthworm.client.Client` for all parameters. """
endtime, cleanup=True): """ Retrieves waveform data from Earthworm Wave Server and returns an ObsPy Stream object.
:type filename: str :param filename: Name of the output file. :type network: str :param network: Network code, e.g. ``'UW'``. :type station: str :param station: Station code, e.g. ``'TUCA'``. :type location: str :param location: Location code, e.g. ``'--'``. :type channel: str :param channel: Channel code, e.g. ``'BHZ'``. Last character (i.e. component) can be a wildcard ('?' or '*') to fetch `Z`, `N` and `E` component. :type starttime: :class:`~obspy.core.utcdatetime.UTCDateTime` :param starttime: Start date and time. :type endtime: :class:`~obspy.core.utcdatetime.UTCDateTime` :param endtime: End date and time. :return: ObsPy :class:`~obspy.core.stream.Stream` object. :type cleanup: bool :param cleanup: Specifies whether perfectly aligned traces should be merged or not. See :meth:`obspy.core.stream.Stream.merge` for ``method=-1``.
.. rubric:: Example
>>> from obspy.earthworm import Client >>> from obspy import UTCDateTime >>> client = Client("pele.ess.washington.edu", 16017) >>> dt = UTCDateTime() - 2000 # now - 2000 seconds >>> st = client.getWaveform('UW', 'TUCA', '', 'BHZ', dt, dt + 10) >>> st.plot() # doctest: +SKIP >>> st = client.getWaveform('UW', 'TUCA', '', 'BH*', dt, dt + 10) >>> st.plot() # doctest: +SKIP
.. plot::
from obspy.earthworm import Client from obspy import UTCDateTime client = Client("pele.ess.washington.edu", 16017) dt = UTCDateTime() - 2000 # now - 2000 seconds st = client.getWaveform('UW', 'TUCA', '', 'BHZ', dt, dt + 10) st.plot() st = client.getWaveform('UW', 'TUCA', '', 'BH*', dt, dt + 10) st.plot() """ # replace wildcards in last char of channel and fetch all 3 components channel_new, starttime, endtime, cleanup=cleanup) # fetch waveform # create new stream st.append(tb.getObspyTrace())
starttime, endtime, format="MSEED", cleanup=True): """ Writes a retrieved waveform directly into a file.
:type filename: str :param filename: Name of the output file. :type network: str :param network: Network code, e.g. ``'UW'``. :type station: str :param station: Station code, e.g. ``'TUCA'``. :type location: str :param location: Location code, e.g. ``''``. :type channel: str :param channel: Channel code, e.g. ``'BHZ'``. Last character (i.e. component) can be a wildcard ('?' or '*') to fetch `Z`, `N` and `E` component. :type starttime: :class:`~obspy.core.utcdatetime.UTCDateTime` :param starttime: Start date and time. :type endtime: :class:`~obspy.core.utcdatetime.UTCDateTime` :param endtime: End date and time. :type format: str, optional :param format: Output format. One of ``"MSEED"``, ``"GSE2"``, ``"SAC"``, ``"SACXY"``, ``"Q"``, ``"SH_ASC"``, ``"SEGY"``, ``"SU"``, ``"WAV"``. See the Supported Formats section in method :meth:`~obspy.core.stream.Stream.write` for a full list of supported formats. Defaults to ``'MSEED'``. :type cleanup: bool :param cleanup: Specifies whether perfectly aligned traces should be merged or not. See :meth:`~obspy.core.stream.Stream.merge`, `method` -1 or :meth:`~obspy.core.stream.Stream._cleanup`. :return: None
.. rubric:: Example
>>> from obspy.earthworm import Client >>> from obspy import UTCDateTime >>> client = Client("pele.ess.washington.edu", 16017) >>> t = UTCDateTime() - 2000 # now - 2000 seconds >>> client.saveWaveform('UW.TUCA..BHZ.mseed', 'UW', 'TUCA', '', 'BHZ', ... t, t + 10, format='MSEED') # doctest: +SKIP """ endtime, cleanup=cleanup)
channel="*"): """ Gets a list of data available on the server.
This method returns information about what time series data is available on the server. The query can optionally be restricted to specific network, station, channel and/or location criteria.
:type network: str :param network: Network code, e.g. ``'UW'``, wildcards allowed. :type station: str :param station: Station code, e.g. ``'TUCA'``, wildcards allowed. :type location: str :param location: Location code, e.g. ``'--'``, wildcards allowed. Use ``'--'`` for empty location codes. :type channel: str :param channel: Channel code, e.g. ``'BHZ'``, wildcards allowed. :rtype: list :return: List of tuples with information on the available data. One tuple consists of network, station, location, channel (all strings), starttime and endtime (both as :class:`~obspy.core.utcdatetime.UTCDateTime`).
.. rubric:: Example
>>> from obspy.earthworm import Client >>> client = Client("pele.ess.washington.edu", 16017) >>> response = client.availability(network="UW", station="TUCA", ... channel="BH*") >>> print response # doctest: +SKIP [('UW', 'TUCA', '--', 'BHE', UTCDateTime(2011, 11, 27, 0, 0, 0, 525000), UTCDateTime(2011, 12, 29, 20, 50, 31, 525000)), ('UW', 'TUCA', '--', 'BHN', UTCDateTime(2011, 11, 27, 0, 0, 0, 525000), UTCDateTime(2011, 12, 29, 20, 50, 31, 525000)), ('UW', 'TUCA', '--', 'BHZ', UTCDateTime(2011, 11, 27, 0, 0, 0, 525000), UTCDateTime(2011, 12, 29, 20, 50, 31, 525000))] """ # build up possibly wildcarded trace id pattern for query # get overview of all available data, winston wave servers can not # restrict the query via network, station etc. so we do that manually # reorder items and convert time info to UTCDateTime UTCDateTime(x[6])) for x in response] # restrict results acording to user input
if __name__ == '__main__': import doctest doctest.testmod(exclude_empty=True) |