Our great sponsors
-
Puts Debuggerer
Ruby library for improved puts debugging, automatically displaying bonus useful information such as source line number and source code.
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
BabylonJS
Babylon.js is a powerful, beautiful, simple, and open game and rendering engine packed into a friendly JavaScript framework.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
FreeCAD
This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler.
def get_topic_titles(doc): selection_class = 'f3 lh-condensed mb-0 mt-1 Link--primary' topic_title_tags = doc.find_all('p', {'class': selection_class}) topic_titles = [] for tag in topic_title_tags: topic_titles.append(tag.text) return topic_titles def get_topic_descs(doc): selection_class = 'f5 color-fg-muted mb-0 mt-1' topic_desc_tags = doc.find_all('p', {'class': selection_class}) topic_descs = [] for tag in topic_desc_tags: topic_descs.append(tag.text.strip()) return topic_descs def get_topic_urls(doc): topic_link_tags = doc.find_all('a', {'class': 'flex-grow-0'}) topic_urls = [] base_url = "https://github.com" for tag in topic_link_tags: topic_urls.append(base_url + tag['href']) return topic_urls def scrape_topics(): topics_url = 'https://github.com/topics' response = requests.get(topics_url) if response.status_code != 200: raise Exception('Failed to load page {}'.format(topic_url)) topics_dict = { 'title': get_topic_titles(doc), 'description': get_topic_descs(doc), 'url': get_topic_urls(doc) } return pd.DataFrame(topics_dict)