ex_machina24's blog

By ex_machina24, history, 3 years ago, In English

I'm trying to build an application for competitive programmers. I can't figure out a way of submitting a solution to a problem from the application (without having to manually opening the website and submitting it). I think (am kind of sure) that bots or web crawlers can't be used on CF for submitting a solution because robots.txt disallows that. But I have seen many applications that use bots to submit solutions. The Codeforces API also does not allow to submit a solution from another application (without opening the CF website). It only allows to read data. Can anyone suggest me a way of doing this or how does applications like cp editor do that? Any advice will be appreciated.

  • Vote: I like it
  • -1
  • Vote: I do not like it

| Write comment?
»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it

You can just recreate whatever request is used to normally submit solutions.

»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it

You might be interested in https://github.com/xalanq/cf-tool (I believe this is what CP Editor uses)
Inspecting gives a pretty good idea of what's happening. It's a POST request using a csrf token. You could probably explore more on your own.

Given that there are already multiple applications/plugins that does this, and that AFAIK it isn't explicitly banned in any of CF's rules, I'd assume that it's allowed.