| 12345678910111213141516171819202122232425262728293031323334 |
- '''
- Connections to parc web-services
- '''
- from _io import BytesIO
- import logging
- import urllib.request
- from lxml import etree # @UnresolvedImport
- from core.pde import PDE_WS_URL
- logger = logging.getLogger("webservice")
- class GfWebservice():
- """ Parser for the pde's web service """
- _url = PDE_WS_URL
- def __init__(self, name):
- self._url = "{}/{}".format(self._url, name)
- self._data = None
- @property
- def url(self):
- return self._url
- def parse(self):
- logger.info("Request data from %s", self._url)
- self._data = urllib.request.urlopen(self._url).read()
- def __iter__(self):
- if self._data is None:
- self.parse()
- return (elt.attrib for _, elt in etree.iterparse(BytesIO(self._data)) if elt.attrib)
|