{"id":13844155,"url":"https://github.com/MA3STR0/kimsufi-crawler","last_synced_at":"2025-07-11T22:30:46.825Z","repository":{"id":87569537,"uuid":"20772875","full_name":"MA3STR0/kimsufi-crawler","owner":"MA3STR0","description":"Crawler that will send you an email alert as soon as servers on OVH/Kimsufi become available for purchase","archived":false,"fork":false,"pushed_at":"2020-09-29T10:09:42.000Z","size":106,"stargazers_count":194,"open_issues_count":5,"forks_count":62,"subscribers_count":19,"default_branch":"master","last_synced_at":"2024-11-21T16:39:57.816Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MA3STR0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2014-06-12T15:35:31.000Z","updated_at":"2024-11-06T23:33:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"a34725ea-2ce6-4555-a241-0857e3e521ab","html_url":"https://github.com/MA3STR0/kimsufi-crawler","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/MA3STR0/kimsufi-crawler","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MA3STR0%2Fkimsufi-crawler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MA3STR0%2Fkimsufi-crawler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MA3STR0%2Fkimsufi-crawler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MA3STR0%2Fkimsufi-crawler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MA3STR0","download_url":"https://codeload.github.com/MA3STR0/kimsufi-crawler/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MA3STR0%2Fkimsufi-crawler/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264909966,"owners_count":23682096,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T17:02:36.016Z","updated_at":"2025-07-11T22:30:46.584Z","avatar_url":"https://github.com/MA3STR0.png","language":"Python","funding_links":[],"categories":["Python (1887)","Python"],"sub_categories":[],"readme":"Kimsufi/So-you-Start Avaliability Crawler\n============================\n\n\u003e Crawler that will notify you when Kimsufi servers (or So-you-Start, or OVH) become available for purchase.\n\n\n\n    git clone https://github.com/MA3STR0/kimsufi-crawler.git\n    cd kimsufi-crawler\n    cp config.json.example config.json\n    vim config.json   # edit config.json file to set up your nofitication preferences\n    sudo pip install -r requirements.txt\n    python crawler.py\n\nAbout\n-----\n\nDedicated servers on [Kimsufi](http://www.kimsufi.com) and [So you Start](http://www.soyoustart.com) have amazing prices, however they are always out of stock. This crawler will notify you as aoon as servers are available for purchase; it can send emails, show Mac OS notifications, open popup windows, or even trigger sms. Then hurry up, you have around 2 minutes to complete your order :)\n\n\nSet it up\n---------\n\n**Runs on GNU/Linux, Mac and Widnows with Python 2.7+ or Python 3.4+**\n\n- Clone this repo (`git clone https://github.com/MA3STR0/kimsufi-crawler.git`) or download and unpack archive\n- Taking `config.json.example` as a template, create a file `config.json` and correct configuration according to your preferences:\n  - `servers`: list of servers that should be tracked, eg `[\"KS-1\", \"KS-2 SSD\", \"GAME-2\"]` etc. All supported server names can be found in mapping file [mapping/server_types.json](/mapping/server_types.json) as values)\n\n  - `region`: desired location of server, `canada` or `europe`\n\n  - `notifier`: notification mechanism, choose between:\n    - `\"email\"`: default, requires additional email account settings\n    - `\"popup\"`: simple popup window, platform-independent\n    - `\"popup_pywin\"`: simple popup window, displays on top of all other windows (Windows only, requires pywin32 package)\n    - `\"osx\"`: Mac OS-X desktop notifications (using terminal-notifier)\n    - `\"smsapi\"`: sms through smsapi.pl gateway, requires account\n    - `\"xmpp\"`: send jabber/xmpp message, requires account - needs xmpppy\n    - `\"pushover\"`: send Pushover message, requires account - needs chump\n    - `\"pushbullet\"`: send Pushbullet message, requires account - needs pushbullet\n    - `\"freemobile\"`: sends sms to freemobile customer, requires account - needs requests\n    - `\"telegram\"`: sends message to a Telegram chat - needs python-telegram-bot\n\n  - `to_email`: your email to receive notifications\n  - `from_email`: email account of the crawler.\n  - `from_pwd`, `from_smtp_host`: smtp configuration of crawler email account\n  - `xmpp_jid`, `xmpp_password`, `xmpp_recipient`, `xmpp_send_test`: xmpp configuration of sending jabber account\n  - `pushover_application_id`, `pushover_user_id`: your Pushover configuration, messages are sent to all devices assigned to user\n  - `pushover_priority`: priority of the notification to receive. -2 is lowest and 2 is highest\n  - `pushbullet_apikey`: your Pushbullet API key, notification sent to all devices\n  - `freemobile_username`: your freemobile login\n  - `freemobile_key`: your freemobile sms notification key\n  - `telegram_token`: full token you receive from BotFather after creating a bot\n  - `telegram_chat_id`: chat id you want to receive the message in. Retrieve by following for example [this stackoverflow answer](https://stackoverflow.com/a/32572159)\n\n- Crawler runs on Python 2.7+ and Tornado framework 4.0+. Assuming that you already have Python/pip, just get Tornado and the notifier dependencies with `sudo pip install -r requirements.txt`. You can also set up virtualenv if you like.\n- Run with `python crawler.py`. If no error messages come, you're ready.\n- (optional) If your pip install command fails due to xmpppy being on pre-release version (eg. 0.5.0rc1) use: `sudo pip install --pre -r requirements.txt`\n- (optional) In case of problems with easygui installation on Ubuntu, you can get it also with `sudo apt-get install python-easygui`\n- (optional) It's a good idea to register an account on Kimsufi/OVH in advance; just pick any available server on www.kimsufi.com and sign up without paying. This way later you will only need to log in and enter payment details, which saves a lot of time.\n\n**Test everything**\n\nYou may test the whole chain by setting some popular servers in your\nconfig.json, for example [\"KS-3A\", \"KS-3B\", \"KS-2E\"]. Since those are always\navailable, you should receive a notification immediately.\n\n**Config check**\n\nCrawler makes an initial check of the config file during startup, so if you have any syntax errors or missing software dependencies - console logs will let you know.\n\n\nAdvanced configuration\n----------------------\n\nYou can add more options to the config.json if you need:\n\n- `\"crawler_interval\": 8` // overriding default periodic callback interval in seconds (should be more than 7.2 to avoid rate-limit)\n- `\"request_timeout\": 30` // http timeout for API requests.\n- `\"from_smtp_port\": 587` // use non-standard smtp port\n- `\"use_starttls\": true` // forcing encrypted SMTP session using TLS (true by default)\n- `\"use_ssl\": false` // forcing encrypted SMTP session using SSL (false by default)\n- `\"from_user\": \"sender@domain.com\"`  // if smtp user is different from `from_email`\n\n**Versions**\n\nThese instructions are based on Version 2 of the crawler. You can access last stable release of v1 by browsing through [release history](https://github.com/MA3STR0/kimsufi-crawler/releases)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMA3STR0%2Fkimsufi-crawler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMA3STR0%2Fkimsufi-crawler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMA3STR0%2Fkimsufi-crawler/lists"}