slruslan / gismeteo-weather-api
为 Gismeteo 私有天气端点提供的简单 PHP 包装器
dev-master
2019-02-21 19:49 UTC
Requires
- php: >=5.6
- guzzlehttp/guzzle: ^6.2
This package is not auto-updated.
Last update: 2024-09-29 05:48:24 UTC
README
简单的 Gismeteo 私有 API PHP 包装器。
使用 Android 应用程序端点,因此您不需要令牌。
安装
使用 Composer
$ composer require slruslan/gismeteo-weather-api --dev
用法
初始化包装器实例
$api = new \Slruslan\Gismeteo\Gismeteo();
获取预报
// Pass your city id. // See below how to get it $cityId = 5233; // Get forecast $forecast = $api->getForecast($cityId); // Get current weather data: var_dump($forecast->fact->values); // Get weather forecast for week: var_dump($forecast->days); // Get info for the city you specified: var_dump($forecast->location);
该库并不是非常文档化,大多数字段都是未知的。如果您了解任何有关响应字段的信息,请随时发送拉取请求。
获取城市 ID
访问 gismeteo.ru 并打开您希望的城市。
然后在页面 URL 中您会看到一个数字,这就是城市 ID 本身。
例如
URL: https://www.gismeteo.ru/weather-sochi-5233/now/ 因此,索契的城市 ID 为 5233。
API 端点已不再工作
如果您下载了此库但发现它不起作用,这意味着 Gismeteo 更改了 API 端点 URL。
要找到新的端点,请下载 Android 应用的最新版本(https://4pda.ru/forum/index.php?showtopic=658787)并安装 apktool。
使用 apktool 反编译应用程序
apktool d gismeteo.apk
打开文件 smali/ru/gismeteo/a/d.smali 并参考第 52 行(未来也可能更改)。
您将看到类似的内容
const-string v1, "http://45e30b7f.services.gismeteo.ru/inform-service/a407a91cfcb53e52063b77e9e777f5bd/"
复制此 URL 并将其粘贴到 Gismeteo.php 文件中的 __construct() 方法中。
恭喜!您现在可以使用该 API 了。
许可
GNU 通用公共许可证 v3.0 (GPL)。描述可在 LICENSE 文件中找到。
联系
您可以通过电子邮件与我联系:dedagates@gmail.com
或在 VK: vk.com/slruslan