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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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