| Total Complexity | 3 |
| Total Lines | 23 |
| Duplicated Lines | 0 % |
| Changes | 2 | ||
| Bugs | 0 | Features | 0 |
| 1 | """ |
||
| 20 | class CEHQ(RemoteGage): |
||
| 21 | URLBASE = 'http://www.cehq.gouv.qc.ca/suivihydro/fichier_donnees.asp' |
||
| 22 | |||
| 23 | def response(self, site_num): |
||
| 24 | """ |
||
| 25 | Retrieve a requests.Response object for the plain text representation |
||
| 26 | of a Quebec CEHQ gage |
||
| 27 | """ |
||
| 28 | url = (self.URLBASE + |
||
| 29 | '?NoStation=' + str(site_num)) |
||
| 30 | return requests.get(url) |
||
| 31 | |||
| 32 | def recent_flow(self, site_num): |
||
| 33 | r = self.response(site_num) |
||
| 34 | line = r.text.splitlines()[2] |
||
| 35 | number = line.split('\t')[2].replace(',', '.') |
||
| 36 | return float(''.join(list(filter(digit_or_period, number)))) |
||
| 37 | |||
| 38 | def get_sample(self, sensor_id): |
||
| 39 | sensor = self.sensor(sensor_id) |
||
| 40 | v = self.recent_flow(sensor.remote_id) |
||
| 41 | dt = datetime.datetime.now() |
||
| 42 | add_new_sample(sensor.id, dt, v) |
||
| 43 |