Hey, Tom,
The reason I get 204 back from wunderfixer on date 2020-01-30 is I really did
have 0 records uploaded to WU (due to a full day of certificate issues).
Under the new API an HTTP 204 is returned for a valid request for which there
is no data.
Here is my workaround:
$ diff wunderfixer wunderfixer_tk
407,409c407
< # Valid response, it's just that WU has no records for the
requested date
< # Return an empty list of TimeStamps (as in WU has no records)
< return {}
---
> raise IOError("Probably a bad station ID or invalid date")
Or if the line numbers don't match yours, it looks like this in context:
if hasattr(response, 'code') and response.code != 200:
if response.code == 204:
# Valid response, it's just that WU has no records for the
requested date
# Return an empty list of TimeStamps (as in WU has no records)
return {}
else:
raise IOError("Bad response code returned: %d" % response.code)
Regards,
\Leon
--
Leon Shaner :: Dearborn, Michigan (iPad)
> On Feb 1, 2020, at 12:40 PM, Leon Shaner <[email protected]> wrote:
>
> Hey, WeeWx'ers.
>
> I took a different approach to working around the WU certificate issue --
> keep SSL but don't verify the CERT. Scroll for that "solution."
>
> But meanwhile, using Wunderground-RF (rapid fire) I am getting an HTTP Error
> 404: Not Found.
> Any ideas on that? Did they change the URL, or is it just down?
>
> I noticed that even their own WunderStation App on iOS/iPadOS is subject to
> the certificate issue and reports all stations as "not reporting" -- even
> ones that are, like mine, which I can verify via the WU website has the data
> and has reported within minutes ago.
>
> From the logs, re: RapidFire HTTP 404:
>
> Feb 1 12:31:51 nixie weewx[13184] DEBUG weewx.restx: Wunderground-RF: Failed
> upload attempt 1: HTTP Error 404: Not Found
> Feb 1 12:31:51 nixie weewx[13184] ERROR weewx.restx: Wunderground-RF: Failed
> to publish record 2020-02-01 12:31:51 EST (1580578311): Failed upload after 1
> tries
> Feb 1 12:31:56 nixie weewx[13184] DEBUG weewx.restx: Wunderground-RF: Failed
> upload attempt 1: HTTP Error 404: Not Found
> Feb 1 12:31:56 nixie weewx[13184] ERROR weewx.restx: Wunderground-RF: Failed
> to publish record 2020-02-01 12:31:56 EST (1580578316): Failed upload after 1
> tries
> Feb 1 12:32:04 nixie weewx[13184] DEBUG weewx.restx: Wunderground-RF: Failed
> upload attempt 1: HTTP Error 404: Not Found
> Feb 1 12:32:04 nixie weewx[13184] ERROR weewx.restx: Wunderground-RF: Failed
> to publish record 2020-02-01 12:32:04 EST (1580578324): Failed upload after 1
> tries
> Feb 1 12:32:05 nixie weewx[13184] DEBUG weewx.restx: Wunderground-RF: Failed
> upload attempt 1: HTTP Error 404: Not Found
> Feb 1 12:32:05 nixie weewx[13184] ERROR weewx.restx: Wunderground-RF: Failed
> to publish record 2020-02-01 12:32:05 EST (1580578325): Failed upload after 1
> tries
> Feb 1 12:32:06 nixie weewx[13184] DEBUG weewx.restx: Wunderground-RF: Failed
> upload attempt 1: HTTP Error 404: Not Found
> Feb 1 12:32:06 nixie weewx[13184] ERROR weewx.restx: Wunderground-RF: Failed
> to publish record 2020-02-01 12:32:05 EST (1580578325): Failed upload after 1
> tries
>
>
> Here is the diff for my SSL CERT workaround:
>
> $ diff restx.py restx.py.20200201.1
> 110,115d109
> < # SSL certificate hack
> < global WUssl
> < WUssl = ssl.create_default_context();
> < WUssl.check_hostname=False
> < WUssl.verify_mode=ssl.CERT_NONE
> <
> 454d447
> < _request.add_header("User-Agent", "weewx/%s" % weewx.__version__)
> 543,544c536
> < # _response = urllib.request.urlopen(request, data=data_bytes,
> timeout=self.timeout)
> < _response = urllib.request.urlopen(request, data=data_bytes,
> timeout=self.timeout, context=WUssl)
> ---
> > _response = urllib.request.urlopen(request, data=data_bytes,
> > timeout=self.timeout)
> 1051,1052c1043
> < # _response = urllib.request.urlopen(request,
> timeout=self.timeout)
> < _response = urllib.request.urlopen(request,
> timeout=self.timeout, context=WUssl)
> ---
> > _response = urllib.request.urlopen(request,
> > timeout=self.timeout)
>
>
> Regards,
> \Leon
> --
> Leon Shaner :: Dearborn, Michigan (iPad)
>
>>> On Jan 31, 2020, at 4:16 PM, Thomas Keffer <[email protected]> wrote:
>>>
>>
>> Travis: what is the error? If it's a certificate error, Version 4 will do a
>> retry after an hour. Unfortunately, Version 3 does not.
>>
>>> On Fri, Jan 31, 2020 at 1:04 PM Travis Bully <[email protected]> wrote:
>>> Not here yet. It'll work for awhile and then will get the random cert
>>> error I sent earlier. A restart of weewx will get it going again. I wish
>>> restx would just try again after xx seconds.
>>>
>>>
>>>
>>>> On Friday, January 31, 2020 at 2:48:50 PM UTC-5, J B wrote:
>>>> Working here too. I had to restart Weewx.
>>>>
>>>>> On Friday, January 31, 2020 at 11:34:19 AM UTC-8, Brice Ruth wrote:
>>>>> Looking like it's working to me, too.
>>>>>
>>>>> Brice Ruth, FCD
>>>>> Software Engineer, Madison WI
>>>>>
>>>>>
>>>>>> On Fri, Jan 31, 2020 at 1:31 PM Travis Bully <[email protected]> wrote:
>>>>>> Agreed. Seems like I still get one cert error every now and then.
>>>>>> Likely still propagating changes through their infrastructure?
>>>>>>
>>>>>> Jan 31 14:29:25 homeauto03 weewx[3784]: restx: Wunderground-RF:
>>>>>> Published record 2020-01-31 14:29:24 EST (1580498964)
>>>>>> Jan 31 14:29:26 homeauto03 weewx[3784]: restx: Wunderground-RF: Failed
>>>>>> upload attempt 1: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED]
>>>>>> certificate verify failed (_ssl.c:727)>
>>>>>> Jan 31 14:29:31 homeauto03 weewx[3784]: restx: Wunderground-RF: Failed
>>>>>> to publish record 2020-01-31 14:29:26 EST (1580498966): Failed upload
>>>>>> after 1 tries
>>>>>> Jan 31 14:29:31 homeauto03 weewx[3784]: restx: Wunderground-RF:
>>>>>> Published record 2020-01-31 14:29:30 EST (1580498970)
>>>>>>
>>>>>>> On Fri, Jan 31, 2020 at 2:30 PM Denny Page <[email protected]> wrote:
>>>>>>> It's fixed now.
>>>>>>>
>>>>>>>
>>>>>>>> On Friday, January 31, 2020 at 8:54:02 AM UTC-8, Denny Page wrote:
>>>>>>>> Wunderground just posted a note about the intermediate certificate
>>>>>>>> issue. Hopefully they will fix it shortly.
>>>>>>>
>>>>>>> --
>>>>>>> You received this message because you are subscribed to a topic in the
>>>>>>> Google Groups "weewx-user" group.
>>>>>>> To unsubscribe from this topic, visit
>>>>>>> https://groups.google.com/d/topic/weewx-user/mYhw6CSKHHg/unsubscribe.
>>>>>>> To unsubscribe from this group and all its topics, send an email to
>>>>>>> [email protected].
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/d/msgid/weewx-user/f5e5741a-e5f8-419b-9c0d-df1972fe5ced%40googlegroups.com.
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "weewx-user" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>>> an email to [email protected].
>>>>>> To view this discussion on the web visit
>>>>>> https://groups.google.com/d/msgid/weewx-user/CAF_%2Bh57S88%3DZOX1mXK8oZBx-_KEHvDPFP%3Dvtd4u3_1qg7994yg%40mail.gmail.com.
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "weewx-user" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an
>>> email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/weewx-user/eaa42f60-98fc-4974-8d25-915a4c7e0d80%40googlegroups.com.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "weewx-user" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/weewx-user/CAPq0zECD1_-w%3D8V5eb5-qYsgMBPcvnNunAOe%2BQbnqpKsOsyGUg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/weewx-user/C37709AF-A033-46B6-8EF2-D8F5013AA380%40isylum.org.