In [ ]:
## Scraping Coursera Catalog
In [22]:
import json
import requests
import urllib.request as urllib
import pandas as pd
from sqlite3 import dbapi2 as sq3
import os
In [2]:
url="https://api.coursera.org/api/courses.v1?start="+"1"+"01&fields=startDate,categories,previewLink,description,photoUrl"
data = urllib.urlopen(url).read()
dataDict = json.loads(data.decode('utf-8'))
print (type(dataDict['elements']))
<class 'list'>
In [25]:
i=0;
coursera=[];
while 1:
url="https://api.coursera.org/api/courses.v1?start="+str(i)+"01&fields=startDate,categories,previewLink,description,photoUrl"
try:
data = urllib.urlopen(url).read()
except URLError as e:
continue
dataDict = json.loads(data.decode('utf-8'))
with open('data.txt', 'a') as outfile:
json.dump(dataDict, outfile)
if(dataDict['elements'] == []):
break
coursera=coursera+dataDict['elements']
i=i+1
print ("Pages scraped",i)
Pages scraped 1
Pages scraped 2
Pages scraped 3
Pages scraped 4
Pages scraped 5
Pages scraped 6
Pages scraped 7
Pages scraped 8
Pages scraped 9
Pages scraped 10
Pages scraped 11
Pages scraped 12
Pages scraped 13
Pages scraped 14
Pages scraped 15
Pages scraped 16
Pages scraped 17
Pages scraped 18
Pages scraped 19
In [5]:
print (len(coursera))
1825
In [6]:
coursera[0].keys()
Out[6]:
dict_keys(['description', 'id', 'slug', 'name', 'categories', 'startDate', 'courseType', 'photoUrl'])
In [11]:
startDate=[m['startDate'] for m in coursera]
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-11-68b7bc3676b9> in <module>()
----> 1 startDate=[m['startDate'] for m in coursera]
<ipython-input-11-68b7bc3676b9> in <listcomp>(.0)
----> 1 startDate=[m['startDate'] for m in coursera]
KeyError: 'startDate'
In [14]:
startDate=[]
for m in coursera:
try:
startDate.append(m['startDate'])
except KeyError as k:
startDate.append(None)
print (len(startDate))
1825
In [19]:
coursera=pd.DataFrame(coursera)
print (coursera.head())
categories courseType \
0 [infotech, business] v2.ondemand
1 [medicine, biology] v2.ondemand
2 [arts, education, teacherpd, humanities] v2.ondemand
3 [physical, physics] v2.ondemand
4 [stats, cs-ai] v2.ondemand
description id \
0 Gamification is the application of game elemen... 69Bku0KoEeWZtA4u62x6lQ
1 The vital signs – heart rate, blood pressure, ... 5zjIsJq-EeW_wArffOXkOw
2 Themes can provide a great structure and pedag... v9CQdBkhEeWjrA6seF25aw
3 This is an introductory astronomy survey class... QgmoVdT2EeSlhSIACx2EBw
4 Interested in increasing your knowledge of the... KXOLVTovEeWnxw5wP_KHTw
name \
0 Gamification
1 Vital Signs: Understanding What the Body Is Te...
2 Modern Art & Ideas
3 The Evolving Universe
4 Introduction to Big Data
photoUrl previewLink \
0 https://d3njjcbhbojbot.cloudfront.net/api/util... NaN
1 https://d3njjcbhbojbot.cloudfront.net/api/util... NaN
2 https://d3njjcbhbojbot.cloudfront.net/api/util... NaN
3 https://d3njjcbhbojbot.cloudfront.net/api/util... NaN
4 https://d3njjcbhbojbot.cloudfront.net/api/util... NaN
slug startDate
0 gamification 1.447096e+12
1 vital-signs 1.456818e+12
2 modern-art-ideas 1.439923e+12
3 evolvinguniverse 1.431662e+12
4 intro-to-big-data 1.442277e+12
In [21]:
ourschema="""
DROP TABLE IF EXISTS "coursera";
CREATE TABLE "coursera" (
"description" TEXT,
"id" INTEGER PRIMARY KEY NOT NULL ,
"slug" VARCHAR,
"name" VARCHAR,
"categories" VARCHAR,
"startDate" INTEGER,
"courseType" VARCHAR,
"photoUrl" VARCHAR,
);
"""
In [24]:
with open('data.txt', 'w') as outfile:
json.dump(coursera, outfile)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-24-f79ab462e6db> in <module>()
1 with open('data.txt', 'w') as outfile:
----> 2 json.dump(coursera, outfile)
/home/abhijeet/anaconda3/lib/python3.5/json/__init__.py in dump(obj, fp, skipkeys, ensure_ascii, check_circular, allow_nan, cls, indent, separators, default, sort_keys, **kw)
176 # could accelerate with writelines in some versions of Python, at
177 # a debuggability cost
--> 178 for chunk in iterable:
179 fp.write(chunk)
180
/home/abhijeet/anaconda3/lib/python3.5/json/encoder.py in _iterencode(o, _current_indent_level)
434 raise ValueError("Circular reference detected")
435 markers[markerid] = o
--> 436 o = _default(o)
437 yield from _iterencode(o, _current_indent_level)
438 if markers is not None:
/home/abhijeet/anaconda3/lib/python3.5/json/encoder.py in default(self, o)
178
179 """
--> 180 raise TypeError(repr(o) + " is not JSON serializable")
181
182 def encode(self, o):
TypeError: categories courseType \
0 [infotech, business] v2.ondemand
1 [medicine, biology] v2.ondemand
2 [arts, education, teacherpd, humanities] v2.ondemand
3 [physical, physics] v2.ondemand
4 [stats, cs-ai] v2.ondemand
5 [] v2.ondemand
6 [education, teacherpd] v1.session
7 [stats] v2.ondemand
8 [cs-theory] v2.capstone
9 [] v2.ondemand
10 [health, business, stats, physics, music, ener... v1.session
11 [infotech, ee] v2.ondemand
12 [math] v2.ondemand
13 [business, stats] v2.ondemand
14 [music] v1.session
15 [] v2.ondemand
16 [math, education, teacherpd] v1.session
17 [music, health] v2.ondemand
18 [] v2.ondemand
19 [energy] v2.ondemand
20 [health] v2.ondemand
21 [] v2.ondemand
22 [economics, business] v2.ondemand
23 [cs-ai] v1.session
24 [economics, humanities, socsci] v1.session
25 [math] v2.ondemand
26 [] v2.ondemand
27 [cs-theory] v1.session
28 [math] v2.ondemand
29 [socsci, arts] v2.ondemand
... ... ...
1795 [infotech, business, ee] v2.ondemand
1796 [] v2.capstone
1797 [cs-programming] v1.session
1798 [humanities, law] v1.session
1799 [] v2.capstone
1800 [ee] v2.ondemand
1801 [] v2.ondemand
1802 [education, stats, teacherpd] v1.session
1803 [physical, biology, physics, energy] v2.ondemand
1804 [math, biology, cs-theory, cs-programming, med... v2.ondemand
1805 [] v2.ondemand
1806 [ee, music, physics] v1.session
1807 [medicine, math, biology] v1.session
1808 [cs-programming] v2.ondemand
1809 [education, humanities] v2.ondemand
1810 [] v2.capstone
1811 [medicine, health, socsci] v1.session
1812 [economics, business] v2.ondemand
1813 [] v2.ondemand
1814 [music, education, arts, socsci, humanities] v1.session
1815 [] v2.capstone
1816 [economics, math, humanities, cs-ai] v1.session
1817 [math, biology, chemistry, energy, education, ... v2.ondemand
1818 [humanities, business, education, socsci] v1.session
1819 [education, teacherpd] v1.session
1820 [physics] v1.session
1821 [humanities] v2.ondemand
1822 [medicine, health] v1.session
1823 [infotech, cs-programming] v1.session
1824 [humanities, education, socsci] v2.ondemand
description \
0 Gamification is the application of game elemen...
1 The vital signs – heart rate, blood pressure, ...
2 Themes can provide a great structure and pedag...
3 This is an introductory astronomy survey class...
4 Interested in increasing your knowledge of the...
5 Welcome to LearnToMod For Educators!\n\nIn thi...
6 Using water as the unifying theme, explore oce...
7 Large-scale biology projects such as the seque...
8 Have you ever wondered how a product recommend...
9 剪辑台前,剪辑师就像厨师对待食材一样,摆弄着拍摄现场记录下来的影像片段,用影像和声音去捕捉线...
10 Learn how to make effective decisions about yo...
11 工程圖學在教什麼?這門課有的重要性為何? 對我的專業有什麼幫助?沒有工程背景的人也可以學習工...
12 Ders çok değişkenli fonksiyonlardaki iki dersl...
13 Accounting Analytics explores how financial st...
14 Explores the factors — musical and cultural — ...
15 Have you come across large piles of garbage in...
16 This course offers participants an opportunity...
17 What is a musician’s response to the condition...
18 Producing music is an incredibly creative proc...
19 How can we shape urban development towards sus...
20 Often called “the cornerstone” of public healt...
21 課程介紹與教學目標 (About the course)\n 房屋為我們遮風避雨,讓我們安...
22 介紹國際職場素養的內涵及相關課題,培育學生應有的職場視野與能力,便利學生融入職場環境,迅速自...
23 Tired of solving Sudokus by hand? This class t...
24 In today’s world, politics and economics are i...
25 Ce cours d'introduction aux probabilités a la ...
26 This course focuses on technical, mobile and s...
27 “数据结构与算法”是计算机学科中的核心基础课程。课程的主要目标培养学生较全面地理解基本数据结...
28 Este curso forma parte de una secuencia con la...
29 In this course we study the ancient, Socratic ...
... ...
1795 Develop insights on navigating the innovation ...
1796 The Capstone Project for this Specialization r...
1797 This course is designed to be a fun introducti...
1798 What does it mean for an immigrant to become a...
1799 Por medio de este proyecto podrás poner en prá...
1800 這門課是「CAD/BIM技術與應用」專項課程的第五門課,屬於BIM系列課程:「工程資訊管理B...
1801 Action without strategy is a recipe for disast...
1802 We prepare high school teachers for teaching d...
1803 This class provides a series of Python program...
1804 欢迎选修北京大学MOOC课程“生物信息学:导论与方法”。\n\n近三十年来,生命科学与计算科...
1805 "Becoming Part of the Globalised Organisation"...
1806 Learn about acoustics by using the concept of ...
1807 A conceptual and interpretive public health ap...
1808 This course will build on the skills you learn...
1809 Course 2: Getting Started with Essay Writing\n...
1810 In the Healthcare Marketplace specialization c...
1811 This course introduces participants from the h...
1812 This is a Chinese version of Competitive Strat...
1813 Vivimos en un mundo cada vez mas globalizado, ...
1814 Join thousands around the world in this free, ...
1815 In the capstone project, you will combine the ...
1816 Learn about different voting methods and fair ...
1817 This course gives you easy access to the inval...
1818 Coaching can inspire and motivate people to le...
1819 Did you miss the course when it ran in 2014? N...
1820 Using publicly available data from NASA of act...
1821 Archaeology is, among human sciences, the disc...
1822 This course provides students an understanding...
1823 This course introduces you to the design and i...
1824 When John F. Kennedy entered the presidential ...
id \
0 69Bku0KoEeWZtA4u62x6lQ
1 5zjIsJq-EeW_wArffOXkOw
2 v9CQdBkhEeWjrA6seF25aw
3 QgmoVdT2EeSlhSIACx2EBw
4 KXOLVTovEeWnxw5wP_KHTw
5 QTTRdG3vEeWG0w42Sx-Gkw
6 v1-1355
7 5uXCfFu2EeSU0SIACxCMgg
8 Rr2thkIKEeWZtA4u62x6lQ
9 rajsT7UJEeWl_hJObLDVwQ
10 v1-1250
11 POZJ3uOtEeSoXCIACw4Gzg
12 ugSnwH9hEeSiIiIAC3lQMQ
13 rc5KG0aUEeWG1w6arGoEIQ
14 v1-239
15 gpAI9GK4EeWFkQ7sUCFGVQ
16 v1-640
17 Kzg9QkDxEeWZtA4u62x6lQ
18 tEqImn2kEeWb-BLhFdaGww
19 yO13mkySEeW_MgoxMAgbMQ
20 FjD-ZB8oEeScWCIACnuVZQ
21 6tx1Y3LiEeWxvQr3acyajw
22 mwj3ASWcEeWs4gorU6Q1Yw
23 v1-174
24 v1-1291
25 06EmILV2EeWq2A7HIftJ6w
26 9h_j5XEiEeWbbw5cIAKQrw
27 v1-1012
28 xaYbkyBTEeWibgoGfGzczQ
29 yS8ezjDPEeW-zwq84wShFQ
... ...
1795 mn-McyvqEeWccAqzeA4VPw
1796 v6FbHbKsEeWbLRJn4j8c4Q
1797 v1-88
1798 v1-201
1799 621xKWGJEeW6VxKdzz12nw
1800 zdc8mAZVEeWXGCIAC0oLcA
1801 nw7W8Ib0EeWLPRLnVNA9qw
1802 v1-1809
1803 gja-ZYNWEeWxQQoymFg8zQ
1804 UCVlZaWxEeSHRCIACyUEiQ
1805 Z3DWPpQKEeWI6BJRAK7IKQ
1806 v1-1870
1807 v1-791
1808 YyA0AhnoEeWwrBKfKrqlSQ
1809 HbD0pCZVEeW6YBLN1oULHQ
1810 nOx9K3HtEeWLqw7zlLhRzQ
1811 v1-2988
1812 IFz46F48EeSncCIAC0eNkA
1813 1HMhd4JEEeWxQQoymFg8zQ
1814 v1-3495
1815 miFF5HqMEeWpcQ7HugVD8Q
1816 v1-843
1817 GdeNrll1EeSROyIACtiVvg
1818 v1-3252
1819 v1-1213
1820 v1-462
1821 7dBeI8uGEeWoOwoxwyRjgQ
1822 v1-1428
1823 v1-2600
1824 lf2q-R6UEeSzvSIAC0KYCQ
name \
0 Gamification
1 Vital Signs: Understanding What the Body Is Te...
2 Modern Art & Ideas
3 The Evolving Universe
4 Introduction to Big Data
5 LearnToMod For Educators
6 Water: The Essential Resource
7 Bioinformatic Methods I
8 Machine Learning Capstone: An Intelligent Appl...
9 剪辑:像编剧一样剪辑
10 Enhance Your Career and Employability Skills
11 工程圖學 2D CAD
12 Çok değişkenli Fonksiyon II: Uygulamalar / Mul...
13 Accounting Analytics
14 Music's Big Bang: The Genesis of Rock 'n' Roll
15 Municipal Solid Waste Management in Developing...
16 Common Core in Action: Math Classroom Challeng...
17 Music and Social Action
18 Pro Tools Basics
19 Greening the Economy: Sustainable Cities
20 Epidemiology: The Basic Science of Public Health
21 材料力學一 (Mechanics of Materials I)
22 職場素養 (Professionalism)
23 Discrete Optimization
24 Configuring the World: A Critical Political Ec...
25 Aléatoire : une introduction aux probabilités ...
26 Advanced Search Engine Optimization Strategies
27 数据结构与算法 Data Structures and Algorithms
28 4.- El Cálculo - Otros Modelos
29 Reason and Persuasion: Thinking Through Three ...
... ...
1795 Innovation for Entrepreneurs: From Idea to Mar...
1796 Effective Communication in the Globalised Work...
1797 An Introduction to Interactive Programming in ...
1798 Citizenship and U.S. Immigration
1799 Marketing en Redes Sociales Proyecto Final
1800 工程資訊管理 BIM 基礎
1801 Strategy
1802 Teaching Statistical Thinking: Part 1 Descript...
1803 Global Warming II: Create Your Own Models in P...
1804 生物信息学: 导论与方法
1805 Becoming Part of the Globalised Workplace
1806 Introduction to Acoustics (Part 2)
1807 Statistical Reasoning for Public Health 1: Est...
1808 Java Programming: Arrays, Lists, and Structure...
1809 Getting Started with Essay Writing
1810 Healthcare Marketplace Capstone
1811 Confronting Gender Based Violence: Global Less...
1812 竞争策略(中文版)
1813 Negocios Internacionales II
1814 ART of the MOOC: Merging Public Art and Experi...
1815 Job Interview Capstone
1816 Making Better Group Decisions: Voting, Judgeme...
1817 Learning How to Learn: Powerful mental tools t...
1818 Conversations that Inspire: Coaching Learning,...
1819 Assessment and Teaching of 21st Century Skills
1820 Analyzing the Universe
1821 Recovering the Humankind's Past and Saving the...
1822 Tropical Parasitology: Protozoans, Worms, Vect...
1823 Programming Mobile Applications for Android Ha...
1824 The Kennedy Half Century
photoUrl \
0 https://d3njjcbhbojbot.cloudfront.net/api/util...
1 https://d3njjcbhbojbot.cloudfront.net/api/util...
2 https://d3njjcbhbojbot.cloudfront.net/api/util...
3 https://d3njjcbhbojbot.cloudfront.net/api/util...
4 https://d3njjcbhbojbot.cloudfront.net/api/util...
5 https://d3njjcbhbojbot.cloudfront.net/api/util...
6 https://d3njjcbhbojbot.cloudfront.net/api/util...
7 https://d3njjcbhbojbot.cloudfront.net/api/util...
8 https://d3njjcbhbojbot.cloudfront.net/api/util...
9 https://d3njjcbhbojbot.cloudfront.net/api/util...
10 https://d3njjcbhbojbot.cloudfront.net/api/util...
11 https://d3njjcbhbojbot.cloudfront.net/api/util...
12 https://d3njjcbhbojbot.cloudfront.net/api/util...
13 https://d3njjcbhbojbot.cloudfront.net/api/util...
14 https://d3njjcbhbojbot.cloudfront.net/api/util...
15 https://d3njjcbhbojbot.cloudfront.net/api/util...
16 https://d3njjcbhbojbot.cloudfront.net/api/util...
17 https://d3njjcbhbojbot.cloudfront.net/api/util...
18 https://d3njjcbhbojbot.cloudfront.net/api/util...
19 https://d3njjcbhbojbot.cloudfront.net/api/util...
20 https://d3njjcbhbojbot.cloudfront.net/api/util...
21 https://d3njjcbhbojbot.cloudfront.net/api/util...
22 https://d3njjcbhbojbot.cloudfront.net/api/util...
23 https://d3njjcbhbojbot.cloudfront.net/api/util...
24 https://d3njjcbhbojbot.cloudfront.net/api/util...
25 https://d3njjcbhbojbot.cloudfront.net/api/util...
26 https://d3njjcbhbojbot.cloudfront.net/api/util...
27 https://d3njjcbhbojbot.cloudfront.net/api/util...
28 https://d3njjcbhbojbot.cloudfront.net/api/util...
29 https://d3njjcbhbojbot.cloudfront.net/api/util...
... ...
1795 https://d3njjcbhbojbot.cloudfront.net/api/util...
1796 https://d3njjcbhbojbot.cloudfront.net/api/util...
1797 https://d3njjcbhbojbot.cloudfront.net/api/util...
1798 https://d3njjcbhbojbot.cloudfront.net/api/util...
1799 https://d3njjcbhbojbot.cloudfront.net/api/util...
1800 https://d3njjcbhbojbot.cloudfront.net/api/util...
1801 https://d3njjcbhbojbot.cloudfront.net/api/util...
1802 https://d3njjcbhbojbot.cloudfront.net/api/util...
1803 https://d3njjcbhbojbot.cloudfront.net/api/util...
1804 https://d3njjcbhbojbot.cloudfront.net/api/util...
1805 https://d3njjcbhbojbot.cloudfront.net/api/util...
1806 https://d3njjcbhbojbot.cloudfront.net/api/util...
1807 https://d3njjcbhbojbot.cloudfront.net/api/util...
1808 https://d3njjcbhbojbot.cloudfront.net/api/util...
1809 https://d3njjcbhbojbot.cloudfront.net/api/util...
1810 https://d3njjcbhbojbot.cloudfront.net/api/util...
1811 https://d3njjcbhbojbot.cloudfront.net/api/util...
1812 https://d3njjcbhbojbot.cloudfront.net/api/util...
1813 https://d3njjcbhbojbot.cloudfront.net/api/util...
1814 https://d3njjcbhbojbot.cloudfront.net/api/util...
1815 https://d3njjcbhbojbot.cloudfront.net/api/util...
1816 https://d3njjcbhbojbot.cloudfront.net/api/util...
1817 https://d3njjcbhbojbot.cloudfront.net/api/util...
1818 https://d3njjcbhbojbot.cloudfront.net/api/util...
1819 https://d3njjcbhbojbot.cloudfront.net/api/util...
1820 https://d3njjcbhbojbot.cloudfront.net/api/util...
1821 https://d3njjcbhbojbot.cloudfront.net/api/util...
1822 https://d3njjcbhbojbot.cloudfront.net/api/util...
1823 https://d3njjcbhbojbot.cloudfront.net/api/util...
1824 https://d3njjcbhbojbot.cloudfront.net/api/util...
previewLink \
0 NaN
1 NaN
2 NaN
3 NaN
4 NaN
5 NaN
6 NaN
7 NaN
8 NaN
9 NaN
10 NaN
11 NaN
12 NaN
13 NaN
14 NaN
15 NaN
16 NaN
17 NaN
18 NaN
19 NaN
20 NaN
21 NaN
22 NaN
23 NaN
24 NaN
25 NaN
26 NaN
27 NaN
28 NaN
29 NaN
... ...
1795 NaN
1796 NaN
1797 NaN
1798 NaN
1799 NaN
1800 NaN
1801 NaN
1802 NaN
1803 NaN
1804 NaN
1805 NaN
1806 NaN
1807 NaN
1808 NaN
1809 NaN
1810 NaN
1811 NaN
1812 NaN
1813 NaN
1814 NaN
1815 NaN
1816 https://class.coursera.org/votingfairdiv-001/l...
1817 NaN
1818 NaN
1819 NaN
1820 https://class.coursera.org/analyze-003/lecture...
1821 NaN
1822 NaN
1823 NaN
1824 NaN
slug startDate
0 gamification 1.447096e+12
1 vital-signs 1.456818e+12
2 modern-art-ideas 1.439923e+12
3 evolvinguniverse 1.431662e+12
4 intro-to-big-data 1.442277e+12
5 learntomod 1.447090e+12
6 waterandenvironment NaN
7 bioinformatics-methods-1 1.421096e+12
8 ml-capstone 1.441044e+12
9 jian-ji 1.453238e+12
10 career NaN
11 2d-cad 1.434394e+12
12 calculus-diferansiyel-hesap 1.418765e+12
13 accounting-analytics 1.452301e+12
14 musicsbigbang NaN
15 solid-waste-management 1.456157e+12
16 ccss-math1 NaN
17 music-and-social-action 1.456120e+12
18 protools 1.455312e+12
19 gte-sustainable-cities 1.453148e+12
20 epidemiology 1.412124e+12
21 mechanics-of-materials-1 1.452548e+12
22 zhichang-suyang 1.439324e+12
23 optimization NaN
24 configuringworld NaN
25 probabilites-2 1.454955e+12
26 advanced-seo-strategies 1.453242e+12
27 dsalgo NaN
28 calculo-4 1.440013e+12
29 plato-dialogues 1.454456e+12
... ... ...
1795 innovative-entrepreneur 1.447695e+12
1796 effective-communication-in-the-globalised-work... 1.453244e+12
1797 interactivepython NaN
1798 immigration NaN
1799 redes-sociales-proyecto 1.454100e+12
1800 jianzhu-zixun-jianmo 1.439575e+12
1801 howtostartabusiness5 1.453246e+12
1802 teachstats1 NaN
1803 global-warming-model 1.454978e+12
1804 sheng-wu-xin-xi-xue 1.429055e+12
1805 becoming-part-of-the-globalised-workplace 1.453244e+12
1806 acoustics2 NaN
1807 statreasoning NaN
1808 java-programming-arrays-lists-data 1.447453e+12
1809 getting-started-with-essay-writing 1.445279e+12
1810 healthcare-marketplace-capstone 1.453239e+12
1811 gbv NaN
1812 competitivestrategyzh 1.414714e+12
1813 negocios-internacionales-2 1.453484e+12
1814 artofthemooc NaN
1815 job-interview-capstone 1.453242e+12
1816 votingfairdiv NaN
1817 learning-how-to-learn 1.423689e+12
1818 coaching NaN
1819 atc21s NaN
1820 analyze NaN
1821 preserving-cultural-heritage 1.455925e+12
1822 parasitology NaN
1823 androidpart2 NaN
1824 kennedy 1.413345e+12
[1825 rows x 9 columns] is not JSON serializable
In [ ]:
Content source: shobhitgupta01/hackmait
Similar notebooks: