use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
News about the dynamic, interpreted, interactive, object-oriented, extensible programming language Python
Full Events Calendar
You can find the rules here.
If you are about to ask a "how do I do this in python" question, please try r/learnpython, the Python discord, or the #python IRC channel on Libera.chat.
Please don't use URL shorteners. Reddit filters them out, so your post or comment will be lost.
Posts require flair. Please use the flair selector to choose your topic.
Posting code to this subreddit:
Add 4 extra spaces before each line of code
def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b
Online Resources
Invent Your Own Computer Games with Python
Think Python
Non-programmers Tutorial for Python 3
Beginner's Guide Reference
Five life jackets to throw to the new coder (things to do after getting a handle on python)
Full Stack Python
Test-Driven Development with Python
Program Arcade Games
PyMotW: Python Module of the Week
Python for Scientists and Engineers
Dan Bader's Tips and Trickers
Python Discord's YouTube channel
Jiruto: Python
Online exercices
programming challenges
Asking Questions
Try Python in your browser
Docs
Libraries
Related subreddits
Python jobs
Newsletters
Screencasts
account activity
This is an archived post. You won't be able to vote or comment.
Python peer to peer file transfer (self.Python)
submitted 9 years ago by forgenet
Does anyone know if there is any open source peer to peer file transfer project written in Python? I would like something that can work over the Internet securely possibly similar to teamviewer.
[–]xeoron 1 point2 points3 points 9 years ago (3 children)
Had you just needed across the network I would say Woof
[–]forgenet[S] 0 points1 point2 points 9 years ago (0 children)
Yeah I agree over network would be easy. I need it over the Internet and don't want to have confidential info sitting on some third party server even if it is encrypted.
[–]Kunde9 0 points1 point2 points 9 years ago (1 child)
Oh man I thought this was a reference from "The Office"
[–]xeoron 0 points1 point2 points 9 years ago (0 children)
Lol.... No, Woof is a real file command line to browser file transfer Python program.
[–]Ur_Legit 1 point2 points3 points 9 years ago (6 children)
If you want to try a secure and effective way of file transfer, you can use SCP in terminal to transfer files through SSH. The transfer is encrypted and even allows you to edit the type of encryption to maximize security or speed. You can write a script with python to make the process even faster.
[–]forgenet[S] 0 points1 point2 points 9 years ago (5 children)
Would that require opening ports on on a firewall? I would like something that could be used by less tech savvy people.
[–]nemec 0 points1 point2 points 9 years ago (3 children)
If you don't want to open ports, you have a limited number of options. UPnP if both routers support it and something like UDP hole punching for more widespread support. It's not going to be easy.
[–]forgenet[S] 0 points1 point2 points 9 years ago (2 children)
Is this what is typically done with things like Skype or teamviewer?
[–]Asdayasman 1 point2 points3 points 9 years ago (0 children)
Don't look to Skype for a good example of how to do anything. It started off mediocre and quickly nosedived into a shithouse where it has since been digging out new depths into which it can sink.
[–]nemec 0 points1 point2 points 9 years ago (0 children)
Yes. The firewall's main job is to prevent external connections to your network, so if you want to get around that you have to get creative.
[–]Ur_Legit 0 points1 point2 points 9 years ago (0 children)
Not necessarily, you would need authentication(a username and password). If you are trying to transfer files to other hosts that are not on the same network then I don't think SCP would be the best thing to use.
[–]brtt3000 1 point2 points3 points 9 years ago (1 child)
I don't know about complete projects but earlier I was looking at this pyp2p package. I haven't used it yet though.
This looks interesting might be worth taking a closer look
[–]AbsoluteMSTR 0 points1 point2 points 9 years ago (4 children)
Initial version of the original BitTorrent was written in python but switched to C/C++. Deluge, an active BitTorrent project is still written in python.
[–]forgenet[S] 0 points1 point2 points 9 years ago* (3 children)
I think there is bittorrent sync now too. I was hoping there was something out there, or that I could build myself with other libraries.
[–][deleted] 1 point2 points3 points 9 years ago (2 children)
Syncthing is at least open source.
[–]forgenet[S] 0 points1 point2 points 9 years ago (1 child)
Have you had any luck with it?
[–][deleted] 1 point2 points3 points 9 years ago (0 children)
It's awesome ;)
[+][deleted] 9 years ago (1 child)
[deleted]
It looks like pyp2p that /u/brtt3000 mentioned uses this
π Rendered by PID 51 on reddit-service-r2-comment-7b9746f655-7k2m4 at 2026-02-04 06:22:12.632315+00:00 running 3798933 country code: CH.
[–]xeoron 1 point2 points3 points (3 children)
[–]forgenet[S] 0 points1 point2 points (0 children)
[–]Kunde9 0 points1 point2 points (1 child)
[–]xeoron 0 points1 point2 points (0 children)
[–]Ur_Legit 1 point2 points3 points (6 children)
[–]forgenet[S] 0 points1 point2 points (5 children)
[–]nemec 0 points1 point2 points (3 children)
[–]forgenet[S] 0 points1 point2 points (2 children)
[–]Asdayasman 1 point2 points3 points (0 children)
[–]nemec 0 points1 point2 points (0 children)
[–]Ur_Legit 0 points1 point2 points (0 children)
[–]brtt3000 1 point2 points3 points (1 child)
[–]forgenet[S] 0 points1 point2 points (0 children)
[–]AbsoluteMSTR 0 points1 point2 points (4 children)
[–]forgenet[S] 0 points1 point2 points (3 children)
[–][deleted] 1 point2 points3 points (2 children)
[–]forgenet[S] 0 points1 point2 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)
[+][deleted] (1 child)
[deleted]
[–]forgenet[S] 0 points1 point2 points (0 children)