Skip to content

narcisabadea/Small-python-projects

Repository files navigation

Small projects for learning Python by following the Udemy course Complete Python Developer in 2023: Zero to Mastery

Some simple projects created using Python3.

No. Project Created by using
1 Converter JPG images to PNG Pillow Imaging Library
2 Password checker Haveibeenpwned API
3 PDF merger PyPDF2
4 Sending emails smtplib
5 Sending SMS Twilio Library
6 Twitter bot Tweepy Library
7 Web scrapping BeautifulSoup Library
8 Really smart brain - ML ImageAI, TensorFlow
9 Soccer Data Analysis Kaggle Dataset, Jupyter notebook, pandas, seaborn, bokeh
10 Iris Data Analysis Jupyter notebook, sklearn, joblib
11 Generate QR Pillow Imaging Library, QR Code
12 Port scanner Socket Library
13 Anonymous FTP Scanner ftplib
  1. Converter JPG images to PNG

    The project uses Pillow Imaging Library for manipulating images.
    To run the project go to the JpgPngPokedexConverter folder and use the below command:

    narcisabadea:~$ python3 JpgPngPokedexConverter.py Pokedex/ New/

    It will loop through the imagines from the Pokedex folder, convert them to PNG format and save them to a New folder.

    ⬆ Back to Top

  2. Password checker

    The project uses Haveibeenpwned API which allows the list of pwned accounts (email addresses and usernames) to be quickly searched via a RESTful service.
    To run the project go to the PasswordChecker folder and use python3 check_my_pass.py passwordToCheck.
    It will do a request to the API and return the number of times it was found.

    narcisabadea:~$ python3 check_my_pass.py password123
    Password password123 was found 250052 times. You should probably change your password
    Done

    ⬆ Back to Top

  3. PDF merger

    The project uses PyPDF2 Library for manipulating PDF files.
    To run the project go to the PdfMerger folder.

    It can merge multiple PDFs into the merged.pdf file as following:

    narcisabadea:~$ python3 pdfmerger.py dummy.pdf twopage.pdf tilt.pdf

    It can also add a watermark to a PDF:

    narcisabadea:~$ python3 watermark.py

    ⬆ Back to Top

  4. Sending emails

    By using the smtplib module we define an SMTP client session object that can be used to send mail to any internet machine with an SMTP.

    To run the project:

    • go to the SendingEmail folder
    • update smtp.login with your email and password from which you are sending the email
    • update the from, to and subject information
    • run the following command:
    narcisabadea:~$ python3 email_sender.py

    The receiver can now check for the email.

    ⬆ Back to Top

  5. Sending SMS

    The project uses Twilio Library
    To run the project go to the SmsPython folder and run the following command:

    narcisabadea:~$ python3 email_sender.py

    ⬆ Back to Top

  6. Twitter bot

    The project uses Tweepy Library
    To run the project go to the TwitterBot folder.

    narcisabadea:~$ python3 tweettweet.py

    ⬆ Back to Top

  7. Web scrapping

    The project uses BeautifulSoup Library for pulling data out of HTML and XML files.
    To run the project go to the WebScrapping folder.
    It will do a request to the https://news.ycombinator.com/news.

    narcisabadea:~$ python3 scrape.py

    ⬆ Back to Top

  8. Really smart brain

    The project uses ImageAI Library which supports a list of state-of-the-art Machine Learning algorithms for image prediction, custom image prediction, object detection, video detection, video object tracking and image predictions trainings, and also TensorFlow
    To run the project go to the ReallySmartBrain folder.

    The image can be changed from "house.jpg" to any other picture. The modelPath can also be changed according to the 4 different algorithms and model types to perform image prediction provided by ImageAI: MobileNetV2, ResNet50, InceptionV3, DenseNet121. After running the command below we will receive each object in the predictions array with the corresponding percentage probability.

    narcisabadea:~$ python3 brain.py
    church: 49.8652458190918
    boathouse: 31.82643353930564
    castle: 14.124444127082825
    beacon: 1.6986381262540817
    lakeside: 0.5432001315057278

    ⬆ Back to Top

  9. Soccer Data Analysis

    The project uses Kaggle Dataset and it's analysed in Jupyter notebook by using pandas, seaborn and bokeh
    The Jupyter notebook .ipynb file can be seen Here

    ⬆ Back to Top

  10. Iris Data Analysis

    The project uses Sklearn and it's analysed in Jupyter notebook by using datasets, model_selection, neighbors, metrics from sklearn, along with joblib
    The Jupyter notebook .ipynb file can be seen Here

    ⬆ Back to Top

  11. Generate QR

    The project uses QR Code.
    To run the project go to the GenerateQr folder and run the following command:

    narcisabadea:~$ python3 qr_code.py

    ⬆ Back to Top

  12. Port scanner

    The project uses Socket Python Library.
    To run the project go to the PortScanner folder and run the following command:

    narcisabadea:~$ python3 portscanner.py

    ⬆ Back to Top

  13. Anonymous FTP Scanner

    The project uses Socket Python Library.
    To run the project go to the AnonymousFTPScanner folder and run the following command:

    narcisabadea:~$ python3 anonymous_scanner.py

    ⬆ Back to Top