• Home
  • Guides
    • All
    • Linux
    • Programming
    • Tools
    Understanding Linux File Permissions

    Understanding Linux File Permissions

    Building a Python Broken Link Checker

    Building a Python Broken Link Checker

    Working With Webhooks in PHP

    Working With Webhooks in PHP

    My Backup Setup for Linux PCs

    My Backup Setup for Linux PCs

    Detecting Hidden WordPress Malware Disguised as Images

    Detecting Hidden WordPress Malware Disguised as Images

    Server-Side Image Conversion with Apache

    Server-Side Image Conversion with Apache

    Fastest Way to Extract a Massive .tar.gz File on Linux

    Fastest Way to Extract a Massive .tar.gz File on Linux

    Monitor SSL Expiration with Python

    Monitor SSL Expiration with Python

    Building a Simple WordPress Post List Tool with PHP

    Building a Simple WordPress Post List Tool with PHP

  • Blog
    • All
    • Artificial Intelligence
    • Developer Life
    • Privacy
    • Reviews
    • Security
    • Tutorials
    What Drawing and Animating in BASIC Taught Me About Programming

    What Drawing and Animating in BASIC Taught Me About Programming

    Why I Stopped Treating SMS As Good Enough

    Why I Stopped Treating SMS As Good Enough

    Why I Built My Own Ad Server Instead of Relying on Outdated Platforms

    Why I Built My Own Ad Server Instead of Relying on Outdated Platforms

    How I Stay Focused When Working on Long Term Projects

    How I Stay Focused When Working on Long Term Projects

    Imposter Syndrome as a Self-Taught Developer

    Imposter Syndrome as a Self-Taught Developer

    Why Stable Websites Outperform Flashy Redesigns

    Why Stable Websites Outperform Flashy Redesigns

    AdGuard Ad Blocker Review

    AdGuard Ad Blocker Review

    Surfshark VPN Review

    Surfshark VPN Review

    Nmap Unleash the Power of Cybersecurity Scanning

    Nmap: Unleash the Power of Cybersecurity Scanning

  • Apps
    • Bible App
    • Bible Verse Screensaver
    • Blue AI Chatbot
    • Early Spring Predictor
    • FIGlet Generator
    • Password Generator
    • StegX
    • The Matrix
    • WeatherX
    • Website Risk Level Tool
  • About
    • About JMooreWV
    • Live Cyber Attack Stats
  • Contact
    • General Contact
    • Website Administration & Cybersecurity
No Result
View All Result
  • Home
  • Guides
    • All
    • Linux
    • Programming
    • Tools
    Understanding Linux File Permissions

    Understanding Linux File Permissions

    Building a Python Broken Link Checker

    Building a Python Broken Link Checker

    Working With Webhooks in PHP

    Working With Webhooks in PHP

    My Backup Setup for Linux PCs

    My Backup Setup for Linux PCs

    Detecting Hidden WordPress Malware Disguised as Images

    Detecting Hidden WordPress Malware Disguised as Images

    Server-Side Image Conversion with Apache

    Server-Side Image Conversion with Apache

    Fastest Way to Extract a Massive .tar.gz File on Linux

    Fastest Way to Extract a Massive .tar.gz File on Linux

    Monitor SSL Expiration with Python

    Monitor SSL Expiration with Python

    Building a Simple WordPress Post List Tool with PHP

    Building a Simple WordPress Post List Tool with PHP

  • Blog
    • All
    • Artificial Intelligence
    • Developer Life
    • Privacy
    • Reviews
    • Security
    • Tutorials
    What Drawing and Animating in BASIC Taught Me About Programming

    What Drawing and Animating in BASIC Taught Me About Programming

    Why I Stopped Treating SMS As Good Enough

    Why I Stopped Treating SMS As Good Enough

    Why I Built My Own Ad Server Instead of Relying on Outdated Platforms

    Why I Built My Own Ad Server Instead of Relying on Outdated Platforms

    How I Stay Focused When Working on Long Term Projects

    How I Stay Focused When Working on Long Term Projects

    Imposter Syndrome as a Self-Taught Developer

    Imposter Syndrome as a Self-Taught Developer

    Why Stable Websites Outperform Flashy Redesigns

    Why Stable Websites Outperform Flashy Redesigns

    AdGuard Ad Blocker Review

    AdGuard Ad Blocker Review

    Surfshark VPN Review

    Surfshark VPN Review

    Nmap Unleash the Power of Cybersecurity Scanning

    Nmap: Unleash the Power of Cybersecurity Scanning

  • Apps
    • Bible App
    • Bible Verse Screensaver
    • Blue AI Chatbot
    • Early Spring Predictor
    • FIGlet Generator
    • Password Generator
    • StegX
    • The Matrix
    • WeatherX
    • Website Risk Level Tool
  • About
    • About JMooreWV
    • Live Cyber Attack Stats
  • Contact
    • General Contact
    • Website Administration & Cybersecurity
No Result
View All Result
Home Guides Programming Python

Generate QR Codes with Python

Jonathan Moore by Jonathan Moore
5 years ago
Reading Time: 1 min read
A A
Generate QR Codes with Python
FacebookTwitter

In this simple Python guide, we will be creating an application that generates and saves QR Codes. QR codes contain data for locations, identifiers, or trackers that point to a website or application.

Our Requirements

Before we get started, you will need to install the qrcode library for Python. A Quick Response code is a two-dimensional pictographic code used for its fast readability and comparatively large storage capacity. The code consists of black modules arranged in a square pattern on a white background. The information encoded can be made up of any kind of data (e.g., binary, alphanumeric, or Kanji symbols).

pip install qrcode

Let’s Get Started

Other than importing the QR Code library, there is nothing else to import. The following will generate the QR Code for the passed data and save it as an image in the working directory.

#!/usr/bin/python3

import qrcode

def generate_qr(data):
    # File Name to save QR Code
    filename = "qrcode.png"
    # Generate QR Code with data
    img = qrcode.make(data)
    # Save the QR Code as an image
    img.save(filename)


if __name__ == '__main__':
    # Call the `generate_qr` function and pass 
    # the data that we want to have generated 
    # as a QR Code.
    generate_qr("https://jmoorewv.com")

Example Output:

QR Code

Tags: PythonQRCode
ShareTweetSharePinShareShareScan
ADVERTISEMENT
Jonathan Moore

Jonathan Moore

I am a Software Architect and Senior Software Engineer with 30+ years of experience building applications for Linux and Windows systems. I focus on system architecture, custom web platforms, server infrastructure, and security-focused tools, with an emphasis on performance and reliability. Over the years, I have built everything from WordPress plugins and automation systems to full platforms, ad serving systems, monitoring tools, and API-driven applications. I prefer working close to the system, solving real problems, and building tools that are meant to be used.

Related Articles

Building a Python Broken Link Checker

Building a Python Broken Link Checker

Broken links have a way of hiding until they become somebody else's problem. A page gets renamed, a migration misses...

Monitor SSL Expiration with Python

Monitor SSL Expiration with Python

SSL certificates are one of those systems that work quietly in the background until something goes wrong. When a certificate...

Monitoring Web Page Changes with Python

Monitoring Web Page Changes with Python

There are times when I need to know that a web page has changed without actively watching it. That might...

Next Post
Generate QR Codes with JavaScript

Generate QR Codes with JavaScript

Recommended Services

Latest Articles

Understanding Linux File Permissions

Understanding Linux File Permissions

File permissions are one of those Linux topics that look simple until something breaks. A script will not run, a...

Read moreDetails

Building a Python Broken Link Checker

Building a Python Broken Link Checker

Broken links have a way of hiding until they become somebody else's problem. A page gets renamed, a migration misses...

Read moreDetails

What Drawing and Animating in BASIC Taught Me About Programming

What Drawing and Animating in BASIC Taught Me About Programming

My first real introduction to programming came through BASICA and GWBASIC on a Tandy 2000 my father got in 1990...

Read moreDetails

Why I Stopped Treating SMS As Good Enough

Why I Stopped Treating SMS As Good Enough

I used to treat SMS based 2FA as a decent upgrade and leave it at that. It was clearly better...

Read moreDetails
  • Privacy Policy
  • Terms of Service
  • Legal Policies

© 2026 JMooreWV. All rights reserved.

No Result
View All Result
  • Home
  • Guides
    • Linux
    • Programming
      • JavaScript
      • PHP
      • Python
    • Tools
    • WordPress
  • Blog
    • Artificial Intelligence
    • Tutorials
    • Privacy
    • Security
  • Apps
    • Bible App
    • Bible Verse Screensaver
    • Blue AI Chatbot
    • Early Spring Predictor
    • FIGlet Generator
    • Password Generator
    • StegX
    • The Matrix
    • WeatherX
    • Website Risk Level Tool
  • About
    • About JMooreWV
    • Live Cyber Attack Stats
  • Contact
    • General Contact
    • Website Administration & Cybersecurity