# Web Scraping (Data Science & ML) > BeautifulSoup, requests, HTML parsing, XPath, CSS selectors, APIs, pagination, best practices - 18 interview questions - Mid-Level - [Interview Questions: Data Science & ML](https://sharpskill.dev/en/technologies/data-science/interview-questions.md) ## 1. Which Python library is typically used to make HTTP requests before parsing HTML content? **Answer** The requests library is the standard in Python for making HTTP requests in a simple and intuitive way. It allows performing GET, POST and other HTTP verbs with a clear API. BeautifulSoup does not make HTTP requests, it only parses HTML once retrieved. ## 2. What is the main role of BeautifulSoup in a web scraping project? **Answer** BeautifulSoup is an HTML/XML parsing library that allows navigating, searching and extracting data from an HTML document. It creates a document tree that makes it easy to search for elements using methods like find() and find_all(). It does not make HTTP requests. ## 3. Which BeautifulSoup method finds all elements matching a given criteria? **Answer** The find_all() method returns a list of all elements matching the specified criteria (tag, attributes, class, etc.). The find() method only returns the first matching element. select() uses CSS selectors and select_one() returns a single element with a CSS selector. ## 15 more questions available - How to specify a custom User-Agent header when making a request with requests? - Which attribute of the Response object returns the HTML content as text? Sign up for free: https://sharpskill.dev/en/login ## Other Data Science & ML interview topics - [Python Basics](https://sharpskill.dev/en/technologies/data-science/interview-questions/python-basics.md): 25 questions, Junior - [Python Object-Oriented Programming](https://sharpskill.dev/en/technologies/data-science/interview-questions/python-oop.md): 20 questions, Junior - [Python Data Structures](https://sharpskill.dev/en/technologies/data-science/interview-questions/python-data-structures.md): 20 questions, Junior - [Git Fundamentals](https://sharpskill.dev/en/technologies/data-science/interview-questions/git-fundamentals.md): 18 questions, Junior - [SQL Basics](https://sharpskill.dev/en/technologies/data-science/interview-questions/sql-basics.md): 20 questions, Junior - [NumPy Fundamentals](https://sharpskill.dev/en/technologies/data-science/interview-questions/numpy-fundamentals.md): 22 questions, Junior - [Pandas Basics](https://sharpskill.dev/en/technologies/data-science/interview-questions/pandas-basics.md): 22 questions, Junior - [Jupyter & Google Colab](https://sharpskill.dev/en/technologies/data-science/interview-questions/jupyter-colab.md): 16 questions, Junior - [SQL Joins & Advanced Queries](https://sharpskill.dev/en/technologies/data-science/interview-questions/sql-joins-advanced.md): 22 questions, Mid-Level - [Advanced Pandas](https://sharpskill.dev/en/technologies/data-science/interview-questions/pandas-advanced.md): 24 questions, Mid-Level - [Visualization with Matplotlib & Seaborn](https://sharpskill.dev/en/technologies/data-science/interview-questions/matplotlib-seaborn.md): 20 questions, Mid-Level - [Interactive Visualizations with Plotly](https://sharpskill.dev/en/technologies/data-science/interview-questions/plotly-interactive.md): 18 questions, Mid-Level - [Descriptive Statistics](https://sharpskill.dev/en/technologies/data-science/interview-questions/statistics-descriptive.md): 20 questions, Mid-Level - [Inferential Statistics](https://sharpskill.dev/en/technologies/data-science/interview-questions/statistics-inferential.md): 24 questions, Mid-Level - [BigQuery & Cloud Data](https://sharpskill.dev/en/technologies/data-science/interview-questions/bigquery-cloud.md): 18 questions, Mid-Level - [Feature Engineering](https://sharpskill.dev/en/technologies/data-science/interview-questions/feature-engineering.md): 22 questions, Mid-Level - [Supervised ML: Regression](https://sharpskill.dev/en/technologies/data-science/interview-questions/ml-supervised-regression.md): 24 questions, Mid-Level - [Supervised ML: Classification](https://sharpskill.dev/en/technologies/data-science/interview-questions/ml-supervised-classification.md): 24 questions, Mid-Level - [Decision Trees & Ensembles](https://sharpskill.dev/en/technologies/data-science/interview-questions/ml-trees-ensembles.md): 24 questions, Mid-Level - [Unsupervised ML](https://sharpskill.dev/en/technologies/data-science/interview-questions/ml-unsupervised.md): 22 questions, Mid-Level - [ML Pipelines & Validation](https://sharpskill.dev/en/technologies/data-science/interview-questions/ml-pipelines-validation.md): 22 questions, Mid-Level - [Time Series & Forecasting](https://sharpskill.dev/en/technologies/data-science/interview-questions/time-series-forecasting.md): 22 questions, Mid-Level - [Deep Learning Fundamentals](https://sharpskill.dev/en/technologies/data-science/interview-questions/deep-learning-fundamentals.md): 24 questions, Senior - [TensorFlow & Keras](https://sharpskill.dev/en/technologies/data-science/interview-questions/tensorflow-keras.md): 22 questions, Senior - [CNN & Image Classification](https://sharpskill.dev/en/technologies/data-science/interview-questions/cnn-image-classification.md): 24 questions, Senior - [RNN & Sequences](https://sharpskill.dev/en/technologies/data-science/interview-questions/rnn-sequences.md): 22 questions, Senior - [Transformers & Attention](https://sharpskill.dev/en/technologies/data-science/interview-questions/transformers-attention.md): 24 questions, Senior - [NLP & Hugging Face](https://sharpskill.dev/en/technologies/data-science/interview-questions/nlp-huggingface.md): 24 questions, Senior - [GenAI & LangChain](https://sharpskill.dev/en/technologies/data-science/interview-questions/genai-langchain.md): 24 questions, Senior - [MLOps & Deployment](https://sharpskill.dev/en/technologies/data-science/interview-questions/mlops-deployment.md): 24 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/en/technologies/data-science/interview-questions/web-scraping