Use Machine Learning to Detect Phishing Websites

beginner Python • beginner scikit-learn • basics of data science
skills learned
work on tabular datasets with pandas and NumPy • build a logistic regression classifier • use machine learning for security
Sayak Paul
4 weeks · 5-8 hours per week · BEGINNER

placing your order...

Don't refresh or navigate away from the page.
liveProject liveProjects give you the opportunity to learn new skills by completing real-world challenges in your local development environment. These self-paced projects also come with full liveBook access to select books for 90 days plus permanent access to other select Manning products. $32.49 $49.99 you save: $17 (35%) self-paced learning
FREE domestic shipping on orders of three or more print books
Use Machine Learning to Detect Phishing Websites (liveProject) added to cart
continue shopping
go to cart

Look inside
In this liveProject, you’ll take on the role of a data scientist employed by the cybersecurity manager of a large organization. Recently, your colleagues have received multiple fake emails containing links to phishing websites. Phishing attacks are one of the most common—and most effective—online security threats, and your manager is worried that passwords or other information will be given to an attacker. You have been assigned the task of creating a machine learning model that can detect whether a linked website is a phishing site. Your challenges will include loading and understanding a tabular dataset, cleaning your dataset, and building a logistic regression model.
This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Sayak Paul
Sayak works at PyImageSearch where he applies deep learning to solve problems in computer vision, and brings solutions to edge devices. He also provides Q&A support to PyImageSearch readers. Previously, Sayak developed projects and practice pools for DataCamp. Outside of work, Sayak enjoys writing technical articles and giving talks at developer meetups and conferences.


This liveProject is designed for developers interested in data science and for beginner data scientists. To begin this liveProject, you will need to be familiar with:

  • Basics of Python and its utility functions
  • Basics of pandas
  • Basics of NumPy
  • Basics of scikit-learn
  • Basics of data science

you will learn

In this liveProject, you’ll learn to build a machine learning model using common Python libraries. You’ll develop techniques for querying datasets, data cleaning, performing hyperparameter tuning, and analyzing and summarizing the performance of your models. These skills can easily be applied to a wide variety of machine learning tasks and other data projects.

  • Loading and understanding tabular datasets using pandas
  • Preprocessing tabular datasets with NumPy
  • Preparing reports on your data with visualization tools
  • Creating a logistic regression classifier as a baseline model using scikit-learn
  • Using random searching to find optimal hyperparameters of the baseline model


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.