如何使用 python 和地理编码通过电话号码获取我的准确位置?

问题描述 投票:0回答:2

这是我获取电话号码位置的代码。我获得了我所在国家/地区的 GPS 位置,但不知道我所在的位置。有什么方法可以修复代码来做到这一点吗?

import phonenumbers
import folium
from target import number
from phonenumbers import geocoder
    

theNumber = phonenumbers.parse(number)

yourLocation = geocoder.description_for_number(theNumber, "en")

print(yourLocation)


#Other details

from phonenumbers import carrier
service_provider = phonenumbers.parse(number)
print(carrier.name_for_number(service_provider, "en"))

from opencage.geocoder import OpenCageGeocode
geocoder = OpenCageGeocode(key)
query =str(yourLocation)
results = geocoder.geocode(query)
#print(results)

lat = results[0]['geometry']['lat']

long = results[0]['geometry']['lng']

print(lat, long)


myMap = folium.Map(location =[lat, long], zoom_start= 0)

folium.Marker([lat , long], popup=  yourLocation).add_to(myMap)


#html save
myMap.save("myLoc.html")
python gps location maps geocode
2个回答
0
投票

phonenumbers
库只会返回国家/地区名称。使用 OpenCage 地理编码器会将国家/地区名称转换为位置(国家/地区的中心)。图书馆或服务机构永远都不知道您在哪里。

该代码遵循在几个 Youtube 视频上共享的教程。在视频中,演示者展示了一个他们认为准确的位置。或者他们说他们想保护自己并使用不同的位置。但它始终是国家的中心(通常是印度或巴基斯坦)。


0
投票

“这是不可能的,而且从来都不可能使用 OpenCage API 跟踪任何人”。

https://blog.opencagedata.com/post/we-can-not-convert-a-phone-number-into-a-location-sorry

阅读 OpenCage 的这篇官方文章,该文章完全承认这是不可能的,因为它被认为是不道德的。

所以请不要尝试这样做,因为这被认为是不道德的。”

© www.soinside.com 2019 - 2024. All rights reserved.