Skip to content

Instantly share code, notes, and snippets.

@anshajk
Created November 4, 2021 08:08
Show Gist options
  • Save anshajk/db91a27cca0f6fa8a7686729c146888e to your computer and use it in GitHub Desktop.
Save anshajk/db91a27cca0f6fa8a7686729c146888e to your computer and use it in GitHub Desktop.
Interview Bit questions list along with their scores
import bs4
import requests
import pandas as pd
list_of_ib_urls = [
"https://www.interviewbit.com/courses/programming/topics/arrays/",
"https://www.interviewbit.com/courses/programming/topics/math/",
"https://www.interviewbit.com/courses/programming/topics/binary-search/",
"https://www.interviewbit.com/courses/programming/topics/strings/",
"https://www.interviewbit.com/courses/programming/topics/bit-manipulation/",
"https://www.interviewbit.com/courses/programming/topics/two-pointers/",
"https://www.interviewbit.com/courses/programming/topics/linked-lists/",
"https://www.interviewbit.com/courses/programming/topics/stacks-and-queues/",
"https://www.interviewbit.com/courses/programming/topics/backtracking/",
"https://www.interviewbit.com/courses/programming/topics/hashing/",
"https://www.interviewbit.com/courses/programming/topics/heaps-and-maps/",
"https://www.interviewbit.com/courses/programming/topics/tree-data-structure/",
"https://www.interviewbit.com/courses/programming/topics/dynamic-programming/",
"https://www.interviewbit.com/courses/programming/topics/greedy-algorithm/",
"https://www.interviewbit.com/courses/programming/topics/graph-data-structure-algorithms/",
]
all_questions = []
for url in list_of_ib_urls:
resp = requests.get(url)
soup = bs4.BeautifulSoup(resp.text)
title = soup.find_all("a", {"class": "locked problem_title"})
score = soup.find_all("td", {"class": "problem_score"})
module_title = url.split("/")[-2]
questions_list = []
for t, s in zip(title, score):
_ = dict(title=t.text.strip(), score=s.text.strip())
questions_list.append(_)
_ = dict(title=module_title, questions=questions_list)
all_questions.append(_)
df = pd.DataFrame()
for questions in all_questions:
title = questions["title"]
q_df = pd.DataFrame(questions["questions"])
q_df["Section"] = title
df = df.append(q_df)
df.to_csv("interviewbit_questions.csv")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment