Skip to main content

Fluffy Pancakes

Fluffy Pancakes is a library designed to detect phishing websites. It uses Machine Learning to predict the output with an accuracy of 95.2%.

Note: Please bear with us for a few seconds to get the output since the library is computationally intensive. We felt bad for making you wait, so we have included a progress bar that you can enable to see the percentage of progress and also see the time taken for execution. Also note that the library heavily depends on a stable internet connection to function its best and to obtain the results. So, the quicker your internet connection is, the faster your results will be :).

Usage

  • Install the module

     $ pip install fluffypancakes
    
  • Grant Permissions

    Use sudo chmod 777 to give permissions to the /site-packages/fluffypancakes/dependencies/ folder.

  • Import

     $ from fluffypancakes import fluffypancakes as fp
    
  • Call the function and Pass the URL

     $ result = fp.serve('<website URL>', progressBar=True)
     $ print(result)
    
  • Defaults

    The default value of the progressBar is 'True'. However, the option can be enabled or disabled with boolean 'True' or 'False' respectively.

Output

-1 : Legitimate Website

1 : Phishing Website

"The URL entered is either Invalid or the Host is unserviceable" : For invalid URLs and Unservicable Hosts

The output is predicted with an accuracy of 95.2%. It is not a definitive classification.

Dependencies

Python dependencies:

  • beautifulsoup4>=4.9.0
  • numpy>=1.17.2
  • pandas>=1.0.4
  • python-whois>=0.7.2
  • requests>=2.23.0
  • scikit-learn>=0.21.3
  • selenium>=3.141.0
  • sklearn>=0.0
  • tqdm>=4.46.0
  • urllib3>=1.25.8

Installing this module will install all the dependencies automatically.

Additional dependencies:

  • Chrome Driver : You'll need a chromedriver in order to complete execution of the code. You can get the file from here. Unzip and add the "chromedriver.exe" (Windows) or "chromedriver" (Linux and MacOS) file to the PYTHONPATH environment variable.

    Well, that's a lot of work right? We know! So, we have included the current stable version of the chromedriver in the dependencies folder of the repo.

    The code automatically detects the OS (Windows, Linux Based and MacOS) and picks up the respective chromedriver file.

    You're all set to go. Although, if, by any chance, you face an issue, just add to PYTHONPATH, the directory structure to where you downloaded this repository.

Development

Want to contribute? Great!

FluffyPancakes uses http requests, bs4, selenium, and of course, Machine Learning, and a lot more libraries. You can find the GitHub repository here.

Make sure you use the following command to get the exact versions of pytest and twine:

$ pip install -e .[dev]

You can find the sample test case here.

Development Status

Development Status :: 4 - Beta
Operating System :: OS Independent

License

MIT


In collaboration with the Center for ISFCR at PES University, Bangalore, India. Special thanks to Mr. Prasad B Honnavali (Director, Center for ISFCR) for his constant support and mentorship.

Release files for fluffypancakes 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fluffypancakes 0.1.5
File Size Uploaded
fluffypancakes-0.1.5.tar.gz 17.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for fluffypancakes 0.1.5
File Interpreter ABI Platform
fluffypancakes-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 34.6 MB

Release files / fluffypancakes-0.1.5.tar.gz

Download URL fluffypancakes-0.1.5.tar.gz
Size 17.3 MB
Tags Source
SHA-256 checksum
How to use checksums
e883fce306165739db36acf18f13ae7b91153f9f68fdda74cf997a61723e94cd
BLAKE2b-256 checksum
How to use checksums
ea0374e85e9cda1f255e279bcbeb37de4c7289e5cc132820a52c8be302f697b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.4

Release files / fluffypancakes-0.1.5-py3-none-any.whl

Download URL fluffypancakes-0.1.5-py3-none-any.whl
Size 17.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
46b82df3a207d829ba656d3f46fd2e551663615c5444c6e083281c78a4f2db25
BLAKE2b-256 checksum
How to use checksums
f184240f1b23abef897c553d19af3b75e83c486b37b3e02f3b73c0846d68f9f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.4

Release history Release notifications | RSS feed

This release

0.1.5 This release

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.26

2 release files

0.0.25

2 release files

0.0.24

2 release files

0.0.23

1 release file

0.0.22

2 release files

0.0.21

2 release files

0.0.20

2 release files

0.0.19

2 release files

0.0.18

2 release files

0.0.17

2 release files

0.0.16

2 release files

0.0.15

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page