📜  我的位置 - Python (1)

📅  最后修改于: 2023-12-03 15:39:39.424000             🧑  作者: Mango

我的位置 - Python

简介

我的位置是一个用 Python 编写的小工具,它可以帮助你快速获取你所在的位置以及相关信息。该工具使用了许多 Python 的第三方库来实现功能,并且通过命令行的方式让你方便地使用它。

功能

我的位置主要有以下功能:

  1. 获取你所在的经纬度信息。
  2. 获取你所在的城市、国家、地区信息。
  3. 获取你所在位置的天气信息。
  4. 获取你所在位置的地址信息。
  5. 将你所在位置在 Google 地图上展示。
使用方法

以下是使用我的位置的示例代码:

# 导入相关库
import argparse
import geocoder
import requests

# 初始化参数解析器
parser = argparse.ArgumentParser()
parser.add_argument("-a", "--address", help="获取指定地址的位置信息")
parser.add_argument("-w", "--weather", help="获取当前位置天气信息", action="store_true")
parser.add_argument("-m", "--map", help="在 Google 地图上展示当前位置", action="store_true")

# 解析参数
args = parser.parse_args()

# 获取位置信息
if args.address:
    location = geocoder.osm(args.address)
else:
    location = geocoder.ip("me")

# 打印位置信息
print("你当前的位置:")
print("经度:", location.lng)
print("纬度:", location.lat)
print("城市:", location.city)
print("国家:", location.country)
print("地区:", location.state)

# 获取天气信息
if args.weather:
    url = "https://api.openweathermap.org/data/2.5/weather"
    params = {"lat": location.lat, "lon": location.lng, "appid": "你的 API Key"}
    res = requests.get(url, params=params)
    weather_info = res.json()
    print("当前天气:", weather_info["weather"][0]["description"])
    print("当前温度:", weather_info["main"]["temp"])

# 在 Google 地图上展示位置
if args.map:
    map_url = f"https://www.google.com/maps/@{location.lat},{location.lng},17z"
    print("地图链接:", map_url)

这段代码通过 argparse 库解析命令行参数,根据参数获取位置、天气或展示在 Google 地图上。你可以在命令行执行以下命令来运行该脚本:

python mylocation.py
第三方库

我的位置使用了以下第三方库:

  • argparse:用于解析命令行参数。
  • geocoder:用于获取位置信息。
  • requests:用于发送 HTTP 请求获取天气信息。

你可以通过以下命令安装这些库:

pip install argparse geocoder requests
结语

我的位置是一个简单而有用的 Python 工具,它可以让你快速获取你所在的位置以及相关信息。如果你想了解更多关于该工具的细节,请查看我的 GitHub 仓库:

https://github.com/shijiebei2003/mylocation