Get weather Information
Diff: WeatherHacks.cpp
- Revision:
- 2:76b812680942
- Parent:
- 1:8655f1720450
- Child:
- 3:6618936f930a
--- a/WeatherHacks.cpp Sun Jun 28 00:17:02 2015 +0000 +++ b/WeatherHacks.cpp Sun Jul 05 08:11:40 2015 +0000 @@ -26,7 +26,7 @@ } -#define LINK_SIZE 100 +#define LINK_SIZE 200 static void getLink(const char *buff, char *link) { const char *p = buff ; @@ -66,7 +66,6 @@ p = XML_getTag(p, "th") ; p = XML_getTag(p, "th") ; p = XML_getTag(p, "td") ; p = XML_getTag(p, "td") ; p = XML_getTag(p, "td") ; p = XML_getElement(p, prec, 2) ; - if(strcmp(prec, "--") == 0)strcpy(prec, " 0") ; if(strcmp(prec, "0%") == 0)strcpy(prec, " 0") ; return p ; } @@ -78,6 +77,7 @@ time_t ctTime; ctTime = time(NULL) + JST ; t = *localtime(&ctTime); + printf("% 2d:%02d => ", t.tm_hour, t.tm_min) ; const char *p ; if(t.tm_hour >= 12) { @@ -88,29 +88,31 @@ p = getHiTemp(p, hi) ; p = getLoTemp(p, lo) ; p = getPrec(p, prec) ; + printf("Hi=%s, Lo=%s, Prec=%s\n", hi, lo, prec) ; } #define FREE(p) if(p)free(p) #define BUFF_SIZE 1024*12 -void WH_getInfo(char *buff, int size) +void WH_getInfo(char *buff, int size, char *hiTemp, char *loTemp, char *prec) { int ret ; -#define LINK_SIZE 200 char link[LINK_SIZE] ; - char hiTemp[TEMP_SIZE] ; - char loTemp[TEMP_SIZE] ; - char prec[TEMP_SIZE] ; - + ret = httpClient.get(RSS_URL, buff, size); if (!ret) { //DBG("Result: %s\n", recv); } else { - ERR("Error - ret = %d - HTTP return code = %d\n", ret, httpClient.getHTTPResponseCode()); + ERR("Error %s\n- ret = %d - HTTP return code = %d\n", RSS_URL, ret, httpClient.getHTTPResponseCode()); } - getLink(buff, link) ; DBG("link=%s\n", link) ; + getLink(buff, link) ; printf("link=%s\n", link) ; ret = httpClient.get(link, buff, size) ; + if (!ret) { + //DBG("Result: %s\n", recv); + } else { + ERR("Error %s\n- ret = %d - HTTP return code = %d\n", link, ret, httpClient.getHTTPResponseCode()); + } getInfo(buff, hiTemp, loTemp, prec); - printf("Hi=%s, Lo=%s, Prec=%s\n", hiTemp, loTemp, prec) ; + }