Hướng dẫn how do i get current city in python? - làm thế nào để tôi có được thành phố hiện tại trong python?

FreeGoIP.NET và các điểm cuối API.ipstack.com dường như sử dụng vị trí của Nhà cung cấp dịch vụ Internet (ISP), không phải là vị trí của thiết bị của tôi. Tôi đã thử Curl http://api.ipstack.com/check?access_key=your_key, và những gì tôi nhận được là

{"ip":"106.51.151.31","type":"ipv4","continent_code":"AS","continent_name":"Asia","country_code":"IN","country_name":"India","region_code":"KA","region_name":"Karnataka","city":"Bengaluru","zip":"560008","latitude":12.9833,"longitude":77.5833,"location":{"geoname_id":1277333,"capital":"New Delhi","languages":[{"code":"hi","name":"Hindi","native":"\u0939\u093f\u0928\u094d\u0926\u0940"},{"code":"en","name":"English","native":"English"}],"country_flag":"http:\/\/assets.ipstack.com\/flags\/in.svg","country_flag_emoji":"\ud83c\uddee\ud83c\uddf3","country_flag_emoji_unicode":"U+1F1EE U+1F1F3","calling_code":"91","is_eu":false}}

Kiểm tra vị trí LAT, dài trên Google Maps cho biết đây là vị trí của nhà cung cấp dịch vụ, không phải vị trí của máy chủ/thiết bị.

Giải pháp này vẫn có thể sử dụng được, nhưng có lẽ chỉ có độ chi tiết của một thành phố hoặc quốc gia, dựa trên cách ISP tổ chức và định vị các cổng của nó.

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọc

    Bàn luận

    Trong bài viết này, chúng tôi sẽ thảo luận về cách định vị địa lý khi bạn nhập bất kỳ tên vị trí nào và nó cung cấp tất cả các thông tin hữu ích như mã bưu chính, thành phố, tiểu bang, quốc gia, v.v. với các vĩ độ và kinh độ (tọa độ cụ thể) và phó -versa trong đó chúng tôi cung cấp các tọa độ để có được tên vị trí.

    Điều này có thể được thực hiện bằng cách sử dụng thư viện địa lý trong Python. Thư viện này được tích hợp vào Python và do đó cần phải được cài đặt một cách rõ ràng.

    Cài đặt

    Trong thiết bị đầu cuối của bạn, chỉ cần chạy lệnh đã cho:

    PIP Cài đặt Geopy

    Cách tiếp cận

    • Nhập mô -đun
    • Phương pháp 1: Nhận tọa độ từ tên vị trí
    • Với vị trí được cung cấp, có thể sử dụng địa chất để trích xuất tọa độ có nghĩa là vĩ độ và kinh độ của nó. Do đó, nó có thể được sử dụng để thể hiện vị trí theo tọa độ.user_agent you can give any name as it considers it to be the name of the app to which it is providing its services.
    • Nhập Nominatim từ Geopy- nominatim là một dịch vụ hoặc công cụ miễn phí hoặc có thể được gọi là API không có khóa cung cấp cho bạn dữ liệu sau khi cung cấp tên và địa chỉ và ngược lại. geocode() function accepts the location name and returns a geodataframe that has all the details and since it’s a dataframe we can get the address, latitude and longitude by simply calling it with the given syntax

    Syntax:

    variablename.address 

    Khi gọi công cụ đề cử chấp nhận đối số của user_agent, bạn có thể đặt bất kỳ tên nào vì nó coi nó là tên của ứng dụng mà nó đang cung cấp dịch vụ của mình.

    variablename.longitude.

    Example:

    Python3

    from geopy.geocoders import Nominatim

    import2= Nominatim(user_agent="GetLoc"____10

    import8= Nominatim0Nominatim1from0

    from6from7

    from6from9geopy.geocoders 0geopy.geocoders 1geopy.geocoders 2from0

    from6from9geopy.geocoders 6geopy.geocoders 7

    Output:

    Phương pháp 2: Lấy tên vị trí từ vĩ độ và kinh độ

    Trong phương pháp này, tất cả mọi thứ đều giống như ở trên, sự khác biệt duy nhất là thay vì sử dụng hàm mã địa lý mà chúng ta sẽ sử dụng phương thức đảo ngược () chấp nhận tọa độ (vĩ độ và kinh độ) làm đối số, phương thức này đưa ra địa chỉ sau cung cấp nó với các tọa độ.reverse() method which accepts the coordinates (latitude and longitude) as the argument, this method gives the address after providing it with the coordinates.

    Syntax:

    reverse(latitude,longitude)

    Cách tiếp cận

    • Nhập mô -đun
    • Gọi công cụ nominatim
    • Vượt qua vĩ độ và kinh độ để đảo ngược ()
    • In tên vị trí

    Example:

    Python3

    from geopy.geocoders import Nominatim

    import2= Nominatim(user_agent="GetLoc"____10

    import8= Nominatim0Nominatim1from0

    from6Nominatim4

    Output:

    Hướng dẫn how do i get current city in python? - làm thế nào để tôi có được thành phố hiện tại trong python?


    Làm cách nào để có được vị trí hiện tại trong Python?

    Sử dụng Python để truy cập dữ liệu vị trí thiết bị..
    Sử dụng đối tượng vĩ độ để trả về vĩ độ: >>> loc.latitude 44.92619529999998 >>>.
    Sử dụng đối tượng kinh độ để trả về kinh độ: >>> loc.longitude -93.39708449999999 >>>.

    Làm thế nào để bạn nhận được định vị địa lý?

    API định vị địa lý được truy cập thông qua một cuộc gọi đến Navigator.GeoLocation;Điều này sẽ khiến trình duyệt của người dùng yêu cầu họ cho phép truy cập dữ liệu vị trí của họ.Nếu họ chấp nhận, thì trình duyệt sẽ sử dụng chức năng tốt nhất có sẵn trên thiết bị để truy cập thông tin này (ví dụ: GPS).via a call to navigator. geolocation ; this will cause the user's browser to ask them for permission to access their location data. If they accept, then the browser will use the best available functionality on the device to access this information (for example, GPS).

    Làm thế nào để tôi có được vĩ độ và kinh độ của toàn bộ địa chỉ trong Python?

    Approach:..
    Nhập mô -đun địa lý ..
    Khởi tạo API nominatim để nhận vị trí từ chuỗi đầu vào ..
    Nhận vị trí với geolocator.Reverse () hàm ..
    Bây giờ trích xuất dữ liệu từ thể hiện vị trí ..