Package: coderHub
coderHubA python method based on the API of thecoderHub.sa, which helps you to fetch the challenges and moreInstallation•Features•Usage•LicenseThis project is a personal effort and CoderHub has nothing to do with the content of this project.InstallationUsepypito install coderHub.pip3installcoderHubFeaturesget all challenges or by difficultysearch for challengesget challenge by idget all languages info or by language nameget top 10 leaderboard by programming languageget user profile infoget user statistics infoUsageget all challenges or by difficulty:fromcoderHubimportCoderHubcoder_hub=CoderHub()# get all challengesprint(coder_hub.get_challenges())#get by difficultyprint(coder_hub.get_challenges(difficulty="سهل"))Example Result{"count":99,"result":[{...},{...},{...},{...},{...},{...},{...},{...},{...},...]}search for challenges:fromcoderHubimportCoderHubcoder_hub=CoderHub()print(coder_hub.search_challenges(word="تاريخ"))Example Result{"count":2,"result":[{"challenge_tags":[{"name":"Date"},{"name":"String"}],"created_by":{"username":"CoderHub"},"id":"c93a5e09-2578-42ec-95db-88d1e87d6459","points":10,"title":"تاريخ اليوم","type_of_level":{"name":"متوسط"}},{"challenge_tags":[{"name":"Date"},{"name":"String"}],"created_by":{"username":"CoderHub"},"id":"a2df08ef-faa1-4aaf-bbd5-66f7e021855a","points":10,"title":"تعديل صيغة التاريخ","type_of_level":{"name":"متوسط"}}]}get challenge by id:fromcoderHubimportCoderHubcoder_hub=CoderHub()print(coder_hub.get_challenge_by_id(challenge_id="3e420f85-f4e9-4e7a-b6bc-f35a8db70cb4"))Example Result{"id":"3e420f85-f4e9-4e7a-b6bc-f35a8db70cb4","title":"طرح عددين","description":"### وصف التحدي\r\nقم بكتابة `function` تستقبل عددين، العدد الأول يمثل رقماً صحيحاً `integer` والعدد الثاني يمثل أيضا رقماً صحيحاً `integer`, ثم قم بإرجاع حاصل **طرح** هذين العددين.\r\n\r\n### المخرجات المتوقعة\r\n| Output  | b  | a |\r\n|----|----|----|\r\n| 5 | 5  | 10 |\r\n| 6 | -3  | 3 |\r\n| -5 | 1 | -4 |\r\n| 1 | -1 | 0 |\r\n| 0 | 0 | 0 |\r\n| -92 | -4 | -96 |","points":5// and more ...}get languages:fromcoderHubimportCoderHubcoder_hub=CoderHub()# all languagesprint(coder_hub.get_languages())# language by nameprint(coder_hub.get_languages(language="python"))Example Result// all languages{"result":[{"id":6,"name":"swift","version":"swift 4.2.2"},{"id":3,"name":"python","version":"python 3.5.3"},{"id":2,"name":"javascript","version":"SMonkey 68.6.0"},{"id":1,"name":"java","version":"jdk 8u51"},{"id":8,"name":"c#","version":"Mono 4.0.2"}]}// language by name{"id":3,"name":"python","version":"python 3.5.3"}get leaderboard:fromcoderHubimportCoderHubcoder_hub=CoderHub()print(coder_hub.get_leaderBoard(language="Python",search_type="ALL"))Example Result{"leaderboard":[{"points":835.0,"user_id":"b45cf6da-c2aa-4347-a3da-fbf951a4183b","rank":1,"user_info":{"username":"hamoud47","public":true}},{"points":830.0,"user_id":"5eb4d6ea-1f0e-4cb9-b365-44518ddf5667","rank":2,"user_info":{"username":"awiteb","public":false}}// 8 more]}get user profile:fromcoderHubimportCoderHubcoder_hub=CoderHub()print(coder_hub.get_profile(username="x7md"))Example Result{"preferred_language":"JavaScript","user_information":{"id":"eab8c73c-9ae2-4595-a321-3de9faa72721","public_profile":true,"first_name":"حمد","last_name":"بنقالي","username":"x7md","bio":"شاب سعودي، مهتم بالبرمجة، والتصميم الرقمي.","country_name":"المملكة العربية السعودية","city":"مكة المكرمة","social_links":[{"site":"GITHUB","handle":"x7md"},{"site":"TWITTER","handle":"anb9"}],"education":[{"name":"highSchool","major":"","institution":"عكرمة بن عمرو","start_at":"2019-03-31T00:00:00+00:00","end_at":"2021-03-31T00:00:00+00:00"}],"certificates":[{"name":"التوعية بمخاطر الأمن السيبراني","institution":"دروب - صندوق تنمية الموارد البشرية","received_at":"2020-04-23T00:00:00+00:00","expires_at":"2020-04-23T00:00:00+00:00","expired":false,"is_training_certificate":false}],"programming_languages":[{"programming_language":"JavaScript","experience":"1 - 2 سنوات"},{"programming_language":"Shell","experience":"أقل من سنة"},{"programming_language":"SQL","experience":"أقل من سنة"}],"extra_public_fields":["are_you_a_trainer","looking_for_job_type","occupation"],"is_looking_for_job":null,"looking_for_job_type":"training","are_you_a_trainer":false,"occupation":"college student","preferred_language":"JavaScript"},"user_badges":[]}get user statistics:fromcoderHubimportCoderHubcoder_hub=CoderHub()print(coder_hub.get_user_statistics(username="x7md"))Example Result{"programming_languages":[{"programming_language_name":"JavaScript","name":"سهل","solved_challenges":59},{"programming_language_name":"JavaScript","name":"صعب","solved_challenges":11},{"programming_language_name":"JavaScript","name":"متوسط","solved_challenges":32},{"programming_language_name":"Java","name":"سهل","solved_challenges":12}],"total_solved_per_programming_language":[{"programming_language_name":"Java","total_solved":12},{"programming_language_name":"JavaScript","total_solved":102}],"total_solved_challenges":114}LICENSEGPLv3