Skip to main content

`pythoncf` is your command-line companion for all things Codeforces.

Project description

pythoncf

pythoncf is the perfect tool for Codeforces enthusiasts who prefer to stay nestled in their comfy terminals rather than venturing out into the wilds of the web. Get your Codeforces API data fix without ever leaving your cozy command line setup.

🚀 Features

  • User Information: Retrieve details about a specific Codeforces user.

  • Rating Graph: Display the rating chart of a user.

  • Contest Information: Get details about a specific contest.

  • Problem Retrieval: Fetch all problems or filter by tags.

  • Blog Entries: View specific blog entries and user blog entries.

  • Rating Changes: Get the rating changes for a contest.

  • User Status: Retrieve submission status of a user in a contest.

  • Contest Status: Get the status of submissions in a contest.

  • User Comparison: Compare two users' information.

📦 Installation

To install pythoncf, use pip:

pip install pythoncf

Additional Requirements

For the user comparison feature, you need to install GNUplot. You can install it with:

  • Ubuntu/Debian:

    sudo apt-get install gnuplot
    
  • macOS (using Homebrew):

    brew install gnuplot
    
  • Windows:

    Download and install GNUplot from the official website.

🛠️ Usage

The following examples illustrate the usage of pythoncf:

  • Display user details:

    pythoncf -userinfo ImFire
    

  • Display rating chart of a user:

    pythoncf -graph ImFire
    

  • Get details of a specific contest:

    pythoncf -contestinfo 1901
    

  • Retrieve all problems:

    pythoncf -prob
    

View available commands for prob.

  • list n: List n problems.

  • listc cid: List problems of contest ID cid.

  • listn name: View problem details specified by name.

  • Retrieve problems with a specific tag:

    pythoncf -prob --tag dp
    
  • Get rating changes for a contest:

    pythoncf -ratingchange 1901
    

  • Get rating changes for a contest with a specific handle:

    pythoncf -ratingchange 1901 --handle ImFire
    

  • Get submissions of a specified user:

    pythoncf -submission ImFire
    

  • Get submissions with pagination:

    pythoncf -submission ImFire --fr 1 --count 10
    
  • Get contest submissions:

    pythoncf -submission 1901
    

  • Get contest submissions with pagination:

    pythoncf -conteststatus 1901 --fr 1 --count 10
    
  • Compare two users:

    pythoncf --compare ImFire Petr
    

📜 Arguments

| Argument | Description |

|-----------------------------------------------|-------------------------------------------------------|

| -userinfo, --user <HANDLE> | Display user details. |

| -graph, --graph <HANDLE> | Display the rating chart of a user. |

| -contestinfo, --contest <CONTEST ID> | Get details of a contest. |

| --gym | Optional argument to list gym contests (use with -contestinfo). |

| -prob, --problem | Retrieve all problems. |

| --tag <TAG> | Tag of problems to retrieve. |

| -ratingchange, --ratingchange <CONTEST ID>| Get rating changes for a contest. |

| --handle <HANDLE> | Specify a handle for rating change queries. |

| -submission, --userstatus <HANDLE> | Get submissions of a specified user. |

| --fr <FROM> | 1-based index of the first submission to return. |

| --count <COUNT> | Number of returned submissions. |

| -conteststatus, --cstatus <CONTEST ID> | Get contest submissions. |

| --compare <USER1 USER2> | Compare two users. |

Planned Features (Working on it)

  • -allblog, --blog <BLOG ID>: View a specific blog entry.

  • -userblog, --userblog <HANDLE>: Get blog entries of a user.

  • --login <USERNAME> <PASSWORD>: Manage login credentials.

  • --submit <PROBLEM ID> <SOLUTION FILE>: Submit solutions to problems.

  • --render <PROBLEM ID>: Improve rendering of problem statement.

📞 Facing Issue ??

Sudhir Sharma:

LinkedIn

Gmail

🤝 Contributing

Contributions are welcome! If you have suggestions or improvements, please submit a pull request or open an issue.

📝 License

This project is licensed under the MIT License. See the LICENSE file for details.

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

pythoncf-1.1.2.tar.gz (819.1 kB view details)

Uploaded Source

Built Distribution

pythoncf-1.1.2-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file pythoncf-1.1.2.tar.gz.

File metadata

  • Download URL: pythoncf-1.1.2.tar.gz
  • Upload date:
  • Size: 819.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.1

File hashes

Hashes for pythoncf-1.1.2.tar.gz
Algorithm Hash digest
SHA256 b2284889a85e26fc01857176dd0a11541c8b5d3e472978de43c06c11978e58af
MD5 ef41a2c67b621ea93fd4f24d81e67362
BLAKE2b-256 d589a95969a14785872eed6b0fa2121c42cd0d3ef95221601099867488cdfeff

See more details on using hashes here.

File details

Details for the file pythoncf-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: pythoncf-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.1

File hashes

Hashes for pythoncf-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8a30bcb146b3dd3ee2fdca8f1e35d0cc5a803aa376686f424ac7e5c5d96a60fc
MD5 d43135877221d5612d50b030cc0b9d22
BLAKE2b-256 0c499627a96de2d81412a4bfc6c7fe5240ab9f7e86b876f7f0b507da7c4e1f2d

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