File Sharing App using Python (original) (raw)

Last Updated : 23 Jul, 2025

Computer Networks is an important topic and to understand the concepts, practical application of the concepts is needed. In this particular article, we will see how to make a simple file-sharing app using Python. AnHTTP Web Server is software that understands URLs (web address) and HTTP (t_he protocol used to view webpages_). Python has several packages which is a collection of modules. And it has several built-in servers. The modules used in this project are:

Step-by-step Approach:

pip install pyqrcode pip install pypng

Implementation of the above Approach:

Python3 `

import necessary modules

for implementing the HTTP Web servers

import http.server

provides access to the BSD socket interface

import socket

a framework for network servers

import socketserver

to display a Web-based documents to users

import webbrowser

to generate qrcode

import pyqrcode from pyqrcode import QRCode

convert into png format

import png

to access operating system control

import os

assigning the appropriate port value

PORT = 8010

this finds the name of the computer user

os.environ['USERPROFILE']

changing the directory to access the files desktop

with the help of os module

desktop = os.path.join(os.path.join(os.environ['USERPROFILE']), 'OneDrive') os.chdir(desktop)

creating a http request

Handler = http.server.SimpleHTTPRequestHandler

returns, host name of the system under

which Python interpreter is executed

hostname = socket.gethostname()

finding the IP address of the PC

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(("8.8.8.8", 80)) IP = "http://" + s.getsockname()[0] + ":" + str(PORT) link = IP

converting the IP address into the form of a QRcode

with the help of pyqrcode module

converts the IP address into a Qrcode

url = pyqrcode.create(link)

saves the Qrcode inform of svg

url.svg("myqr.svg", scale=8)

opens the Qrcode image in the web browser

webbrowser.open('myqr.svg')

Creating the HTTP request and serving the

folder in the PORT 8010,and the pyqrcode is generated

continuous stream of data between client and server

with socketserver.TCPServer(("", PORT), Handler) as httpd: print("serving at port", PORT) print("Type this in your Browser", IP) print("or Use the QRCode") httpd.serve_forever()

`

Output:

Demonstration:

Why Port 8010 ?

TCP Port 8010 use a defined protocol to communicate depending on the application. A protocol is a set of formalized rules that explains how data is communicated over a network. This is secured and is not infected by Virus/Trojan.

Explanation: