Skip to main content

An asynchronous API integrator for Geoguessr

Project description

This is a Geoguessr API client written in Python. It allows you to interact with the Geoguessr API, such as getting information about users, challenges, maps, and scores.

To install the package, run the following command:

pip install geoguessr-async

Once the package is installed, you can create a client object by passing your NCFA cookie to the constructor:

import asyncio
from geoguessr_async import Geoguessr

client = Geoguessr("your_ncfa_cookie")

To get your NCFA cookie, login to geoguessr, open your dev tools (Ctrl+Shift+I), go to Application/Storage/Cookies and copy the value of _ncfa.

You can then use the client object to get information about users, challenges, maps, and scores. For example, to get information about an user with his ID, you can use the following code:

user = await client.get_user_infos(userId)

The Profile object will contain information such as your username, country, and number of games played.

To get information about a challenge, you can use the following code:

challenge = await client.get_challenge_infos("https://geoguessr.com/challenge/xxxx")

The Challenge object will contain information such as the challenge name, description, and time limit.

To get information about a map, you can use the following code:

map = await client.get_map_infos("https://geoguessr.com/maps/xxxx")

The Map object will contain information such as the map name, size, and location.

To get information about a score, you can use the following code:

score = await client.get_challenge_score("https://geoguessr.com/challenge/xxxx")

The Score object will contain information such as the players' name, score, and time. When getting the score of a challenge, it automatically plays it, pinging (0, 0) each round.

Example: Get results of a challenge as a list of dictionnaries

score = await client.get_challenge_score("https://geoguessr.com/challenge/xxxx")
scores = []
for s in score:
    d_player = {
        "userId": s.userId,
        "userName":s.playerName,
        "total": s.totalScore,
        "roundPoints": s.gamePlayerGuessesRoundScoreInPoints,
        "roundTimes": s.gamePlayerGuessesTime
    }
    scores.append(d_player)
print(scores)

I hope you find this package useful! Please let me know if you have any questions or feedback.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geoguessr_async-1.0.12.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

geoguessr_async-1.0.12-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file geoguessr_async-1.0.12.tar.gz.

File metadata

  • Download URL: geoguessr_async-1.0.12.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for geoguessr_async-1.0.12.tar.gz
Algorithm Hash digest
SHA256 3839fca66d36ce83da0edffe915a72f2c809e7d41531c2da6945c4900b3849f7
MD5 82fc11380357d51adea6307938e580c0
BLAKE2b-256 23474216108266cc9dd192e472e353bbb41ad9e3a8072084150c73352fc1d134

See more details on using hashes here.

File details

Details for the file geoguessr_async-1.0.12-py3-none-any.whl.

File metadata

File hashes

Hashes for geoguessr_async-1.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 f20495c4f5496a64812ee54cfe976c8c1df1d8cdac6f383d046c8d9cc446c025
MD5 e8ceff09282c3df7f5c752753b9f6a1b
BLAKE2b-256 2d24d341434b325a05a48485e1fe2eac48d3bbbd8d2700b3ea4a1751ec7f74ce

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page