From 483ccfca9db9d58ba9e833081dfb0fcc410e7dc2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jul 2023 20:41:13 +0000 Subject: [PATCH 01/49] Bump certifi from 2022.12.7 to 2023.7.22 in /yts_torrents Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22. - [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22) --- updated-dependencies: - dependency-name: certifi dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- yts_torrents/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yts_torrents/requirements.txt b/yts_torrents/requirements.txt index 7960a033..36363897 100644 --- a/yts_torrents/requirements.txt +++ b/yts_torrents/requirements.txt @@ -1,4 +1,4 @@ -certifi==2022.12.7 +certifi==2023.7.22 chardet==3.0.4 idna==2.8 requests==2.31.0 From 8958ee78960fc4b12723fb707772f32c94ee96ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jul 2023 20:41:14 +0000 Subject: [PATCH 02/49] Bump certifi from 2022.12.7 to 2023.7.22 in /Keylogger Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22. - [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22) --- updated-dependencies: - dependency-name: certifi dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Keylogger/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Keylogger/requirements.txt b/Keylogger/requirements.txt index b0dd9b7e..1dd9b040 100644 --- a/Keylogger/requirements.txt +++ b/Keylogger/requirements.txt @@ -1,6 +1,6 @@ astroid==2.1.0 autopep8==1.4.3 -certifi==2022.12.7 +certifi==2023.7.22 colorama==0.4.1 isort==4.3.4 lazy-object-proxy==1.3.1 From 618d9524d52d8a47185318f756c5b5347e3bfaf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jul 2023 20:44:14 +0000 Subject: [PATCH 03/49] Bump certifi from 2022.12.7 to 2023.7.22 in /url_shortener Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22. - [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22) --- updated-dependencies: - dependency-name: certifi dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- url_shortener/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/url_shortener/requirements.txt b/url_shortener/requirements.txt index 77b06eef..f05327a1 100644 --- a/url_shortener/requirements.txt +++ b/url_shortener/requirements.txt @@ -1,5 +1,5 @@ beautifulsoup4==4.9.3 -certifi==2022.12.7 +certifi==2023.7.22 chardet==3.0.4 idna==2.10 pkg-resources==0.0.0 From d1de68ba8fc5fd434586a2c979414b29d9f8e8b8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jul 2023 20:44:37 +0000 Subject: [PATCH 04/49] Bump certifi from 2022.12.7 to 2023.7.22 in /Github_Bot Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22. - [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22) --- updated-dependencies: - dependency-name: certifi dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Github_Bot/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Github_Bot/requirements.txt b/Github_Bot/requirements.txt index 889260f3..f07b2ffa 100644 --- a/Github_Bot/requirements.txt +++ b/Github_Bot/requirements.txt @@ -1,4 +1,4 @@ -certifi==2022.12.7 +certifi==2023.7.22 chardet==3.0.4 idna==2.10 requests==2.31.0 From 93eb0f1f3c49f582f696b4a63f9343a9a7c569b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jul 2023 20:44:41 +0000 Subject: [PATCH 05/49] Bump certifi from 2022.12.7 to 2023.7.22 in /elastic-snapshot Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22. - [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22) --- updated-dependencies: - dependency-name: certifi dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- elastic-snapshot/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elastic-snapshot/requirements.txt b/elastic-snapshot/requirements.txt index 889260f3..f07b2ffa 100644 --- a/elastic-snapshot/requirements.txt +++ b/elastic-snapshot/requirements.txt @@ -1,4 +1,4 @@ -certifi==2022.12.7 +certifi==2023.7.22 chardet==3.0.4 idna==2.10 requests==2.31.0 From eaac3448df8253425431201d1f2a44f46fb0a9c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Aug 2023 02:21:31 +0000 Subject: [PATCH 06/49] Bump cryptography from 41.0.2 to 41.0.3 in /file-encrypt-decrypt Bumps [cryptography](https://github.com/pyca/cryptography) from 41.0.2 to 41.0.3. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pyca/cryptography/compare/41.0.2...41.0.3) --- updated-dependencies: - dependency-name: cryptography dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- file-encrypt-decrypt/Pipfile.lock | 48 +++++++++++++++---------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/file-encrypt-decrypt/Pipfile.lock b/file-encrypt-decrypt/Pipfile.lock index c8185585..69d8273f 100644 --- a/file-encrypt-decrypt/Pipfile.lock +++ b/file-encrypt-decrypt/Pipfile.lock @@ -101,32 +101,32 @@ }, "cryptography": { "hashes": [ - "sha256:01f1d9e537f9a15b037d5d9ee442b8c22e3ae11ce65ea1f3316a41c78756b711", - "sha256:079347de771f9282fbfe0e0236c716686950c19dee1b76240ab09ce1624d76d7", - "sha256:182be4171f9332b6741ee818ec27daff9fb00349f706629f5cbf417bd50e66fd", - "sha256:192255f539d7a89f2102d07d7375b1e0a81f7478925b3bc2e0549ebf739dae0e", - "sha256:2a034bf7d9ca894720f2ec1d8b7b5832d7e363571828037f9e0c4f18c1b58a58", - "sha256:342f3767e25876751e14f8459ad85e77e660537ca0a066e10e75df9c9e9099f0", - "sha256:439c3cc4c0d42fa999b83ded80a9a1fb54d53c58d6e59234cfe97f241e6c781d", - "sha256:49c3222bb8f8e800aead2e376cbef687bc9e3cb9b58b29a261210456a7783d83", - "sha256:674b669d5daa64206c38e507808aae49904c988fa0a71c935e7006a3e1e83831", - "sha256:7a9a3bced53b7f09da251685224d6a260c3cb291768f54954e28f03ef14e3766", - "sha256:7af244b012711a26196450d34f483357e42aeddb04128885d95a69bd8b14b69b", - "sha256:7d230bf856164de164ecb615ccc14c7fc6de6906ddd5b491f3af90d3514c925c", - "sha256:84609ade00a6ec59a89729e87a503c6e36af98ddcd566d5f3be52e29ba993182", - "sha256:9a6673c1828db6270b76b22cc696f40cde9043eb90373da5c2f8f2158957f42f", - "sha256:9b6d717393dbae53d4e52684ef4f022444fc1cce3c48c38cb74fca29e1f08eaa", - "sha256:9c3fe6534d59d071ee82081ca3d71eed3210f76ebd0361798c74abc2bcf347d4", - "sha256:a719399b99377b218dac6cf547b6ec54e6ef20207b6165126a280b0ce97e0d2a", - "sha256:b332cba64d99a70c1e0836902720887fb4529ea49ea7f5462cf6640e095e11d2", - "sha256:d124682c7a23c9764e54ca9ab5b308b14b18eba02722b8659fb238546de83a76", - "sha256:d73f419a56d74fef257955f51b18d046f3506270a5fd2ac5febbfa259d6c0fa5", - "sha256:f0dc40e6f7aa37af01aba07277d3d64d5a03dc66d682097541ec4da03cc140ee", - "sha256:f14ad275364c8b4e525d018f6716537ae7b6d369c094805cae45300847e0894f", - "sha256:f772610fe364372de33d76edcd313636a25684edb94cee53fd790195f5989d14" + "sha256:0d09fb5356f975974dbcb595ad2d178305e5050656affb7890a1583f5e02a306", + "sha256:23c2d778cf829f7d0ae180600b17e9fceea3c2ef8b31a99e3c694cbbf3a24b84", + "sha256:3fb248989b6363906827284cd20cca63bb1a757e0a2864d4c1682a985e3dca47", + "sha256:41d7aa7cdfded09b3d73a47f429c298e80796c8e825ddfadc84c8a7f12df212d", + "sha256:42cb413e01a5d36da9929baa9d70ca90d90b969269e5a12d39c1e0d475010116", + "sha256:4c2f0d35703d61002a2bbdcf15548ebb701cfdd83cdc12471d2bae80878a4207", + "sha256:4fd871184321100fb400d759ad0cddddf284c4b696568204d281c902fc7b0d81", + "sha256:5259cb659aa43005eb55a0e4ff2c825ca111a0da1814202c64d28a985d33b087", + "sha256:57a51b89f954f216a81c9d057bf1a24e2f36e764a1ca9a501a6964eb4a6800dd", + "sha256:652627a055cb52a84f8c448185922241dd5217443ca194d5739b44612c5e6507", + "sha256:67e120e9a577c64fe1f611e53b30b3e69744e5910ff3b6e97e935aeb96005858", + "sha256:6af1c6387c531cd364b72c28daa29232162010d952ceb7e5ca8e2827526aceae", + "sha256:6d192741113ef5e30d89dcb5b956ef4e1578f304708701b8b73d38e3e1461f34", + "sha256:7efe8041897fe7a50863e51b77789b657a133c75c3b094e51b5e4b5cec7bf906", + "sha256:84537453d57f55a50a5b6835622ee405816999a7113267739a1b4581f83535bd", + "sha256:8f09daa483aedea50d249ef98ed500569841d6498aa9c9f4b0531b9964658922", + "sha256:95dd7f261bb76948b52a5330ba5202b91a26fbac13ad0e9fc8a3ac04752058c7", + "sha256:a74fbcdb2a0d46fe00504f571a2a540532f4c188e6ccf26f1f178480117b33c4", + "sha256:a983e441a00a9d57a4d7c91b3116a37ae602907a7618b882c8013b5762e80574", + "sha256:ab8de0d091acbf778f74286f4989cf3d1528336af1b59f3e5d2ebca8b5fe49e1", + "sha256:aeb57c421b34af8f9fe830e1955bf493a86a7996cc1338fe41b30047d16e962c", + "sha256:ce785cf81a7bdade534297ef9e490ddff800d956625020ab2ec2780a556c313e", + "sha256:d0d651aa754ef58d75cec6edfbd21259d93810b73f6ec246436a21b7841908de" ], "index": "pypi", - "version": "==41.0.2" + "version": "==41.0.3" }, "importlib-metadata": { "hashes": [ From e2727befda442a2ed87cd58b0620a9bc772fc240 Mon Sep 17 00:00:00 2001 From: Abhay Kabdwal Date: Sun, 3 Sep 2023 18:56:01 +0530 Subject: [PATCH 07/49] Improvised Youtube_Video_Downloader --- Youtube_Video_Downloader/download_video.py | 87 ++++++++++++++++++++-- 1 file changed, 81 insertions(+), 6 deletions(-) diff --git a/Youtube_Video_Downloader/download_video.py b/Youtube_Video_Downloader/download_video.py index 56525b72..85384abc 100644 --- a/Youtube_Video_Downloader/download_video.py +++ b/Youtube_Video_Downloader/download_video.py @@ -1,11 +1,86 @@ -from pytube import YouTube -link = input('https://youtu.be/6M1rP2r672o') -yt = Youtube(link) -yt.streams.first().download() -print('downloaded', link) - +import os +import string +from pytube import Playlist, YouTube +from moviepy.editor import AudioFileClip +def MP4ToMP3(mp4, mp3): + FILETOCONVERT = AudioFileClip(mp4) + FILETOCONVERT.write_audiofile(mp3) + FILETOCONVERT.close() +def download_youtube_video(url, folder_path, quality, media_type,j): + # Create a YouTube object + yt = YouTube(url) + # Remove invalid characters from the title + valid_chars = "-_.() %s%s" % (string.ascii_letters, string.digits) + title = ''.join(c for c in yt.title if c in valid_chars) + # Get the streams based on the media type + if media_type == 'audio': + audio_stream = yt.streams.get_audio_only() + # Check if the stream is not None + if audio_stream is not None: + # Download the stream + try: + print(f"Downloading...") + audio_stream.download(output_path=folder_path, filename="temp_file.mp4") + print(f"Download completed!") + input_file = os.path.join(folder_path, f"temp_file.mp4") + output_file = os.path.join(folder_path, f"{title}.mp3") + print("Converting to mp3...") + MP4ToMP3(input_file, output_file) + print("Conversion completed!") + + os.rename(output_file,f'{folder_path}\{title}.mp3') + os.remove(input_file) + + except Exception as e: + print(e) + else: + print("No audio stream was found.") + + else: + streams = yt.streams.filter(progressive=True) + + # Get the stream based on the quality + stream = streams.filter(resolution=quality).first() + + # Check if the stream is not None + if stream is not None: + # Download the stream + print(f"Downloading...") + stream.download(output_path=folder_path) + print(f"Download completed!") + else: + print(f"No stream with quality {quality} was found.") + +def download_youtube_playlist(playlist_url,folder_path,quality,media_type): + try: + playlist = Playlist(playlist_url) + i = 0 + for url in playlist: + video_title = YouTube(url).title + video_size = YouTube(url).streams.filter(resolution=quality).first().filesize/(1024*1024) + print(f"Video title: {video_title} \nVideo size: {'%.2f' % video_size} MB") + download_youtube_video(url,folder_path,quality,media_type,i) + print("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++") + i += 1 + except Exception as e: + print(e) + +playlist_url = input('Enter the URL of the YouTube playlist: ') +folder_path = input('Enter the path of the folder where you want to save the videos: ') +media_type = input('Enter the media type (audio or video): ') +if media_type == 'video': + quality = input('Enter the quality of the video (e.g. 720p, 1080p): ') +else: + quality = None + +# Create the folder if it doesn't exist +if not os.path.exists(folder_path): + os.makedirs(folder_path) + +# Download the playlist +download_youtube_playlist(playlist_url,folder_path,quality,media_type) From 9b541ff994519aaa0f7df542d30737eaa74c40d1 Mon Sep 17 00:00:00 2001 From: Chaitanya Singh Kushwaha Date: Tue, 12 Sep 2023 22:58:03 +0530 Subject: [PATCH 08/49] Corrected some broken links in README.md --- README.md | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 20b8e72b..0f48d1dd 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ So far, the following projects have been integrated to this repo: |[Directory organizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory-organizer) | [Athul P](https://github.com/athulpn) | |[Database-As-Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Database-As-Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) | |[DOH DIG](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/DOH-Dig/) | [Ryan](https://github.com/awsumco) | -|[English Theasaurus](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/English_Theasaurus/) | [Ansh Dhingra](https://github.com/anshdhinhgra47) | +|[English Theasaurus](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/English_Theasauras/) | [Ansh Dhingra](https://github.com/anshdhinhgra47) | |[Elasticsearch snapshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/elastic-snapshot) | [Joe Ryan](https://github.com/joeryan) | |[Excel Files Merger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| |[Excel to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)| @@ -63,7 +63,7 @@ So far, the following projects have been integrated to this repo: |[Image circle formatter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image-Circulator) |[Berk Gureken](https://github.com/bureken) | |[Image To PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/images2pdf)|[msaoudallah](https://github.com/msaoudallah)| |[Instadp Web Scrapper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/InstadpShower)|[Psychiquest](https://github.com/psychiquest)| -|[IP Address ](https://github.com/hashtagAB/Awesome-Python-Scripts/tree/master/ipaddress)|[Xenium](https://github.com/xeniumcode)| +|[IP Address ](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/ipaddress)|[Xenium](https://github.com/xeniumcode)| |[Keylogger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Keylogger) |[Preet Mishra](https://github.com/preetmishra) | |[Minecraft Server in background](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| |[Own IP locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Own_IP_Adress)|[Chris]()| @@ -81,8 +81,6 @@ So far, the following projects have been integrated to this repo: |[Subtitle downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)| |[TTS - Text to Speech Mp3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TTS_Text_to_Speech_Mp3)|[Antonio Andrade](https://github.com/xAndrade)| |[Top_News](Top_News)|[Attupatil](https://github.com/Attupatil)| -|[Take Screenshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Take_screenshot)|[Moad Mohammed Elhebri](https://github.com/moadmmh)| -|[To Do Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/To-Do-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| |[Upload Files to S3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)| |[Vinegère Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/vigenere_cipher)|[victoni](https://github.com/victoni)| |[Web proxy](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| @@ -103,7 +101,7 @@ So far, the following projects have been integrated to this repo: |[Wikipedia-Search](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Wikipedia-Search)|[Nissaar](https://github.com/Nissaar) | |[Instagram Video Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/insta_video_downloader)|[Shobhit Bhosure](https://github.com/shobhit99) | |[Medium Article Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)| -|[Face Recognition](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/image_recognition)|[LOKESH KHURANA](https://github.com/theluvvkhurana)| +|[Face Recognition](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Face_recognition)|[LOKESH KHURANA](https://github.com/theluvvkhurana)| |[File Encrypt Decrypt](file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| | [Address locator](Location_Of_Adress) | [Chris]() | | [Automated calendar](automated_calendar) | [J.A. Hernández](https://github.com/jesusalberto18) | @@ -175,7 +173,7 @@ So far, the following projects have been integrated to this repo: |[File Organizer](File-Organizer)|[Ayush Bhardwaj](https://github.com/hastagAB)| |[send_whatsapp_message](send_whatsapp_message)|[Mukesh Prasad](https://github.com/mukeshprasad)| |[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)| -|[COVID visualiser (real-time) ](covdi_visualiser)|[Tushar Gupta](https://github.com/tushar5526)| +|[COVID visualiser (real-time) ](covid_visualiser)|[Tushar Gupta](https://github.com/tushar5526)| |[Random_Email_Generator](Random_Email_Generator)|[Shubham Garg](https://github.com/shub-garg)| |[WiFi Password Viewer](Wifi-Password)|[Sagar Patel](https://github.com/sagar627)| |[Tambola_Ticket_Generator](Tambola_Ticket_Generator)|[Amandeep_Singh](https://github.com/Synster)| @@ -194,7 +192,7 @@ So far, the following projects have been integrated to this repo: |[Download Page as PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Download-page-as-pdf)|[Jeremias Gomes](https://github.com/j3r3mias)| |[JSON file to YAML convertor](https://github.com/saksham117/Awesome-Python-Scripts/tree/master/json-to-yaml)|[Saksham Basandrai](https://github.com/saksham117)| |[Independent RSA Communication Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Communication)|[Miguel Santos](https://github.com/wi6n3l)| -|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/GithubBot)|[Abhilasha](https://github.com/Abhilasha06)| +|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github_Bot)|[Abhilasha](https://github.com/Abhilasha06)| |[Translate CLI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TranslateCLI)|[Rodrigo Oliveira](https://github.com/rodrigocam)| |[Rock-Paper-Scissor Game](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Rock-Paper-Scissor)|[Punit Sakre](https://github.com/punitsakre23)| |[Folder Locker and hider](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Folder%20Locker%20%26%20Hider)|[Prajjwal Pathak](https://github.com/pyguru123)| @@ -202,8 +200,8 @@ So far, the following projects have been integrated to this repo: |[Test Your Internet Speed](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TestMyInternetSpeed)|[TheSmartDeveloperr](https://github.com/thesmartdeveloperr)| |[Plagiarism_detector](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Plagiarism_detector)|[Akshita Singhal](https://github.com/akshitasinghal4444)| |[csv_to_json](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/csv_to_json)|[MoiZ](https://github.com/TechBoyy6)| -|[Battery_notification](https://github.com/hastagABAwesome-Python-Scripts/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)| -|[Steg_Tool](https://github.com/hastagABAwesome-Python-Scripts/Steg_Tool/)|[Shankar JP](https://github.com/shankarjp)| +|[Battery_notification](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)| +|[Steg_Tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Steg_Tool/)|[Shankar JP](https://github.com/shankarjp)| | [Directory Tree Visualizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory_Tree_Generator) | [Harpreet Singh Saluja](https://github.com/hssaluja25/) | |[Pressure_Converter](https://github.com/E-wave112/Awesome-Python-Scripts/tree/master/Pressure_Converter)|[E-Wave](https://github.com/E-wave112)| | [File Carving](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File_Carving) | [Yeryeong Kim](https://github.com/icarusicarus/) | From b652b9f6024e82c89468d5f35ffc86a3c36dbdc6 Mon Sep 17 00:00:00 2001 From: Niranjan B Date: Fri, 29 Sep 2023 15:45:10 +0530 Subject: [PATCH 09/49] fix : #259 ANTIALIAS changed to LANCZOS --- Image_Compressor/Image_Compressor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Image_Compressor/Image_Compressor.py b/Image_Compressor/Image_Compressor.py index b838e229..cb7082d0 100644 --- a/Image_Compressor/Image_Compressor.py +++ b/Image_Compressor/Image_Compressor.py @@ -6,7 +6,7 @@ img = PIL.Image.open(file_path) myHeight,myWidth = img.size -img=img.resize((myHeight,myWidth),PIL.Image.ANTILIAS) +img=img.resize((myHeight,myWidth),Image.Resampling.LANCZOS) save_path=asksaveasfile() img.save(save_path+"_compressed.JPG") \ No newline at end of file From f66126186bdcdb8d874575d31bba787b255d1ff2 Mon Sep 17 00:00:00 2001 From: Niranjan B Date: Fri, 29 Sep 2023 16:16:07 +0530 Subject: [PATCH 10/49] fix : #259 AttributeError fixed --- Image_Compressor/Image_Compressor.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/Image_Compressor/Image_Compressor.py b/Image_Compressor/Image_Compressor.py index cb7082d0..5704c8d9 100644 --- a/Image_Compressor/Image_Compressor.py +++ b/Image_Compressor/Image_Compressor.py @@ -2,11 +2,18 @@ from PIL import Image from tkinter.filedialog import * -file_path=askopenfilenames() -img = PIL.Image.open(file_path) -myHeight,myWidth = img.size +file_paths = askopenfilenames() -img=img.resize((myHeight,myWidth),Image.Resampling.LANCZOS) -save_path=asksaveasfile() +if len(file_paths) == 0: + print("No Files Selected") -img.save(save_path+"_compressed.JPG") \ No newline at end of file +for file in file_paths: + file_name = file.split('/')[-1] + file_name, extension = file_name.split('.') + + img = PIL.Image.open(file) + height,width = img.size + img=img.resize((height,width),Image.Resampling.LANCZOS) + + save_path=askdirectory() + img.save(save_path+f"/{file_name}_compressed.{extension}") \ No newline at end of file From 72390bf61ba18d1bccece6f8d8bc00227cb15c3d Mon Sep 17 00:00:00 2001 From: Niranjan B Date: Fri, 29 Sep 2023 16:21:21 +0530 Subject: [PATCH 11/49] docs: Added Dependencies to README --- Image_Compressor/README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Image_Compressor/README.md b/Image_Compressor/README.md index 82db2718..9eb14401 100644 --- a/Image_Compressor/README.md +++ b/Image_Compressor/README.md @@ -7,5 +7,7 @@ It automates the task of compressing the image in day to day lives. # Dependencies: - pip install image +Note : Use python3.11 for tkinder + + `pip install pillow` From acdfbedbae61008ebadbfc9e33f1305f119cce6d Mon Sep 17 00:00:00 2001 From: sr2005roy <122456380+sr2005roy@users.noreply.github.com> Date: Mon, 2 Oct 2023 14:58:17 +0530 Subject: [PATCH 12/49] Update README.md to arrange the table of features in ascending order --- README.md | 372 +++++++++++++++++++++++++++--------------------------- 1 file changed, 186 insertions(+), 186 deletions(-) diff --git a/README.md b/README.md index 0f48d1dd..8c3eb439 100644 --- a/README.md +++ b/README.md @@ -22,192 +22,192 @@ So far, the following projects have been integrated to this repo: | Project Name | Contributors | |--|--| -| [TicTacToe AI and 2 players](https://github.com/ShadowHunter15/Awesome-Python-Scripts/tree/master/TicTacToe_AI_and_2_players) | [Omar Sameh](https://github.com/ShadowHunter15) | -| [AI for guess the number](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/AI_for_Guess_the_number) | [Omar Sameh](https://github.com/ShadowHunter15) | -| [sudoku-solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/sudoku-solver) | [Rishabh Umrao](https://github.com/ayedaemon) | -|[File Encrypt Decrypt](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| -| [Address locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Adress) | [Chris]() | -| [Automated emails](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | -|[AI chatbot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) | -|[Asymmetric Encryption](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) | -|[Bitcoin price GUI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) | -|[Better_CSV_Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Better_CSV_Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) | -|[Cryptocurrency Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) | -|[Cryptocurrency Prices](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-Prices) |[xemeds](https://github.com/xemeds) | -|[Caesar Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/caesar_cipher) |[epi052](https://github.com/epi052) | -|[Checksum tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Checksum) |[Austin Ewens](https://github.com/aewens) | -|[Codechef autosubmitter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) | -|[Colored B&W Image Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) | -|[Contact 'Leads' Distribution](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) | -|[Cricket Matches web Scraper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) | -| [Crypt socket](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Crypt_Socket)|[Willian GL](https://github.com/williangl) | -| [CSV to Excel](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CSV-to-Excel)|[xemeds](https://github.com/xemeds) | -|[Current City Weather](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) | -|[Directory organizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory-organizer) | [Athul P](https://github.com/athulpn) | -|[Database-As-Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Database-As-Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) | -|[DOH DIG](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/DOH-Dig/) | [Ryan](https://github.com/awsumco) | -|[English Theasaurus](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/English_Theasauras/) | [Ansh Dhingra](https://github.com/anshdhinhgra47) | -|[Elasticsearch snapshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/elastic-snapshot) | [Joe Ryan](https://github.com/joeryan) | -|[Excel Files Merger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| -|[Excel to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Extended_ip_address_info](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)| -|[File explorer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| -|[File Sharing Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| -|[Flash card quizzer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) | -|[Frammed text generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/FramedText) | [jcdwalle](https://github.com/jcdwalle)| -|[git_automation](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/git_automation)| [loge1998](https://github.com/loge1998)| -|[Gmail Mailing Script](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/mailing) |[mayank-kapur](https://github.com/kapurm17) | -|[Get Time By TimeZone](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Get_Time_TimezoneWise)|[Parth Shah](https://github.com/codingis4noobs) | -|[Handwrting DNN recognizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Handwriting_Recognizer) |[Chris]() | -|[HTML Table to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Image circle formatter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image-Circulator) |[Berk Gureken](https://github.com/bureken) | -|[Image To PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/images2pdf)|[msaoudallah](https://github.com/msaoudallah)| -|[Instadp Web Scrapper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/InstadpShower)|[Psychiquest](https://github.com/psychiquest)| -|[IP Address ](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/ipaddress)|[Xenium](https://github.com/xeniumcode)| -|[Keylogger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Keylogger) |[Preet Mishra](https://github.com/preetmishra) | -|[Minecraft Server in background](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| -|[Own IP locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Own_IP_Adress)|[Chris]()| -|[Port Scanner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)| -|[Harry Potter Cloak](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Harry-Potter-Cloak) | [thesmartdeveloperr](https://github.com/thesmartdeveloperr)| -|[Python Algebra Solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)| -|[Random name generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)| -|[Random Password Generators](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)| -|[Server Ping](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Ping_Server)|[prince]()| -|[Signature photo to PNG converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)| -|[Simple Webpage Parser](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Slideshare downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)| -|[SMS your location](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SmsYourLocation)|[prince]()| -|[Squid installer for Ubuntu](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| -|[Subtitle downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)| -|[TTS - Text to Speech Mp3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TTS_Text_to_Speech_Mp3)|[Antonio Andrade](https://github.com/xAndrade)| -|[Top_News](Top_News)|[Attupatil](https://github.com/Attupatil)| -|[Upload Files to S3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)| -|[Vinegère Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/vigenere_cipher)|[victoni](https://github.com/victoni)| -|[Web proxy](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| -|[Website blocker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)| -|[Word generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Word-generator)|[TGLIDE](https://github.com/TGlide)| -|[Work log generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| -|[Youtube video downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| -|[Zabbix API](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| -|[Zip password cracker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| -|[RSA Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Algorithm)|[Chinmay Rane](https://github.com/Chinmayrane16)| -|[CLI Calculator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/cli_calculator)|[Willian GL](https://github.com/williangl) | -|[Find PhoneNumber in String](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)| -|[IMDB TV Series Info Extractor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) | -|[PX to REM](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PX-to-REM)|[Atthaphon Urairat](https://github.com/uatthaphon) | -|[py_based_music_player](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/py_based_music_player) | [Bhargav Kuvadiya](https://github.com/techdobz) | -|[Yoda-speak Translator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/speak_like_yoda)|[sonniki](https://github.com/sonniki) | -|[SSH Host adder](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SSH_Host_Adder)|[NinoDoko](https://github.com/NinoDoko)| -|[Wikipedia-Search](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Wikipedia-Search)|[Nissaar](https://github.com/Nissaar) | -|[Instagram Video Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/insta_video_downloader)|[Shobhit Bhosure](https://github.com/shobhit99) | -|[Medium Article Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)| -|[Face Recognition](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Face_recognition)|[LOKESH KHURANA](https://github.com/theluvvkhurana)| -|[File Encrypt Decrypt](file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| -| [Address locator](Location_Of_Adress) | [Chris]() | -| [Automated calendar](automated_calendar) | [J.A. Hernández](https://github.com/jesusalberto18) | -| [Automated emails](automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | -|[AI chatbot](Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) | -|[Asymmetric Encryption](asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) | -|[Bitcoin price GUI](Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) | -|[Cryptocurrency Converter](Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) | -|[Caesar Cipher](caesar_cipher) |[epi052](https://github.com/epi052) | -|[Checksum tool](Checksum) |[Austin Ewens](https://github.com/aewens) | -|[Codechef autosubmitter](Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) | -|[Colored B&W Image Converter](Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) | -|[Contact 'Leads' Distribution](Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) | -|[Cricket Matches web Scraper](CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) | -| [Crypt socket](Crypt_Socket)|[Willian GL](https://github.com/williangl) | -|[Current City Weather](Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) | -|[Directory organizer](Directory-organizer) | [Athul P](https://github.com/athulpn) | -|[DOH DIG](DOH-Dig/) | [Ryan](https://github.com/awsumco) | -|[Excel Files Merger](Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| -|[Excel to List](Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Extended_ip_address_info](extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)| -|[Fibonacci_Sequence_Generator](Fibonacci_Sequence_Generator) | [John Wesley Kommala](https://github.com/JohnWesleyK)| -|[File explorer](File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| -|[File Sharing Bot](File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| -|[Flash card quizzer](Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) | -|[Frammed text generator](FramedText) | [jcdwalle](https://github.com/jcdwalle)| -|[Gmail Mailing Script](mailing) |[mayank-kapur](https://github.com/kapurm17) | -|[Handwrting DNN recognizer](Handwriting_Recognizer) |[Chris]() | -|[HTML Table to List](HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Image circle formatter](Image-Circulator) |[Berk Gureken](https://github.com/bureken) | -|[Image To PDF](images2pdf)|[msaoudallah](https://github.com/msaoudallah)| -|[Instadp Web Scrapper](InstadpShower)|[Psychiquest](https://github.com/psychiquest)| -|[Keylogger](Keylogger) |[Preet Mishra](https://github.com/preetmishra) | -|[Minecraft Server in background](Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| -|[Own IP locator](Location_Of_Own_IP_Adress)|[Chris]()| -|[Port Scanner](Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)| -|[Python Algebra Solver](Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)| -|[Random name generator](Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)| -|[Random Password Generators](Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)| -|[Server Ping](Ping_Server)|[prince]()| -|[Signature photo to PNG converter](signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)| -|[Simple Webpage Parser](SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Slideshare downloader](Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)| -|[SMS your location](SmsYourLocation)|[prince]()| -|[Squid installer for Ubuntu](Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| -|[Subtitle downloader](Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)| -|[Take Screenshot](Take_screenshot)|[Moad Mohammed Elhebri](https://github.com/moadmmh)| -|[To Do Bot](To%20Do%20Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| -|[Upload Files to S3](Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)| -|[Vinegère Cipher](vigenere_cipher)|[victoni](https://github.com/victoni)| -|[Web proxy](Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| -|[Website blocker](Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)| -|[Website Url Detector](Website_Url_Detector)|[sonniki](https://github.com/sonniki)| -|[Word Frequency Counter](Word_Frequency_Counter)|[sonniki](https://github.com/sonniki)| -|[Word generator](Word-generator)|[TGLIDE](https://github.com/TGlide)| -|[Work log generator](Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| -|[Youtube video downloader](Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| -|[Zabbix API](zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| -|[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| -|[CLI Calculator](cli_calculator)|[Willian GL](https://github.com/williangl) | -|[Find PhoneNumber in String](Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)| -|[IMDB TV Series Info Extractor](imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) | -|[Yoda-speak Translator](speak_like_yoda)|[sonniki](https://github.com/sonniki) | -|[Medium Article Downloader](medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)| -|[RSA Key Pair Generator](RSA-key-pairs) | [Aditya Parikh](https://github.com/obiwan69) | -|[Clean_up_photo](Clean_up_photo_directory)|[sritanmay001](https://github.com/sritanmy001)| -|[PyRecorder](PyRecorder)|[Rocky Jain](https://github.com/jainrocky)| -|[Pretty CSV](Pretty-CSV)|[Frizz925](https://github.com/Frizz925)| -|[File Organizer](File-Organizer)|[Ayush Bhardwaj](https://github.com/hastagAB)| -|[send_whatsapp_message](send_whatsapp_message)|[Mukesh Prasad](https://github.com/mukeshprasad)| -|[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)| -|[COVID visualiser (real-time) ](covid_visualiser)|[Tushar Gupta](https://github.com/tushar5526)| -|[Random_Email_Generator](Random_Email_Generator)|[Shubham Garg](https://github.com/shub-garg)| -|[WiFi Password Viewer](Wifi-Password)|[Sagar Patel](https://github.com/sagar627)| -|[Tambola_Ticket_Generator](Tambola_Ticket_Generator)|[Amandeep_Singh](https://github.com/Synster)| -| [Py_Cleaner](Py_Cleaner) | [Abhishek Dobliyal](https://github.com/Abhishek-Dobliyal)| -|[Send messages to sqs in parallel](send_sqs_messages_in_parallel)|[Jinam Shah](https://github.com/jinamshah)| -|[Codeforces Checker](codeforcesChecker)|[Jinesh Parakh](https://github.com/jineshparakh)| -|[Github repo creator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Git_repo_creator)|[Harish Tiwari ](https://github.com/optimist2309)| -|[Remove-Duplicate-Files](Remove-Duplicate-Files)|[Aayushi Varma](https://github.com/aayuv17)| -|[PDF2text](PDF2text)|[QuangPH](https://github.com/quangph-1686a)| -|[Image Watermarker (batch)](imageWatermarker)|[Remco Halman](https://github.com/remcohalman)| -|[Folder Manager](Folder_Manager)|[Harsh Raj](https://github.com/DeadProgrammer0)| -|[IMDBQuerier](IMDBQuerier)|[Burak Bekci](https://github.com/Bekci)| -|[URL shortener](url_shortener)|[Sam Ebison](https://github.com/ebsa491)| -|[2048](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/2048)|[Krunal](https://github.com/gitkp11)| -|[Spotify Downloader](spotify_downloader)|[Sagar Patel](https://github.com/sagar627)| -|[Download Page as PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Download-page-as-pdf)|[Jeremias Gomes](https://github.com/j3r3mias)| -|[JSON file to YAML convertor](https://github.com/saksham117/Awesome-Python-Scripts/tree/master/json-to-yaml)|[Saksham Basandrai](https://github.com/saksham117)| -|[Independent RSA Communication Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Communication)|[Miguel Santos](https://github.com/wi6n3l)| -|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github_Bot)|[Abhilasha](https://github.com/Abhilasha06)| -|[Translate CLI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TranslateCLI)|[Rodrigo Oliveira](https://github.com/rodrigocam)| -|[Rock-Paper-Scissor Game](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Rock-Paper-Scissor)|[Punit Sakre](https://github.com/punitsakre23)| -|[Folder Locker and hider](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Folder%20Locker%20%26%20Hider)|[Prajjwal Pathak](https://github.com/pyguru123)| -|[Image Compressor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image_Compressor)|[Prathima Kadari](https://github.com/prathimacode-hub)| -|[Test Your Internet Speed](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TestMyInternetSpeed)|[TheSmartDeveloperr](https://github.com/thesmartdeveloperr)| -|[Plagiarism_detector](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Plagiarism_detector)|[Akshita Singhal](https://github.com/akshitasinghal4444)| -|[csv_to_json](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/csv_to_json)|[MoiZ](https://github.com/TechBoyy6)| -|[Battery_notification](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)| -|[Steg_Tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Steg_Tool/)|[Shankar JP](https://github.com/shankarjp)| -| [Directory Tree Visualizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory_Tree_Generator) | [Harpreet Singh Saluja](https://github.com/hssaluja25/) | -|[Pressure_Converter](https://github.com/E-wave112/Awesome-Python-Scripts/tree/master/Pressure_Converter)|[E-Wave](https://github.com/E-wave112)| -| [File Carving](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File_Carving) | [Yeryeong Kim](https://github.com/icarusicarus/) | -|[Google Meet Joiner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/google_meet_joiner)|[JohanSanSebastian](https://github.com/JohanSanSebastian)| -|[Pdf to AudioBook Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PdfToAudio)|[Ayesha Gull](https://github.com/ayeshag7/)| -|[Countdown](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Countdown)|[Jeremias Gomes](https://github.com/j3r3mias)| +|[2048](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/2048)|[Krunal](https://github.com/gitkp11)| +|[AI chatbot](Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) | +|[AI chatbot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) | +|[AI for guess the number](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/AI_for_Guess_the_number) | [Omar Sameh](https://github.com/ShadowHunter15) | +|[Address locator](Location_Of_Adress) | [Chris]() | +|[Address locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Adress) | [Chris]() | +|[Asymmetric Encryption](asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) | +|[Asymmetric Encryption](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) | +|[Automated calendar](automated_calendar) | [J.A. Hernández](https://github.com/jesusalberto18) | +|[Automated emails](automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | +|[Automated emails](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | +|[Battery_notification](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)| +|[Better_CSV_Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Better_CSV_Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) | +|[Bitcoin price GUI](Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) | +|[Bitcoin price GUI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) | +|[CLI Calculator](cli_calculator)|[Willian GL](https://github.com/williangl) | +|[CLI Calculator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/cli_calculator)|[Willian GL](https://github.com/williangl) | +|[COVID visualiser (real-time) ](covid_visualiser)|[Tushar Gupta](https://github.com/tushar5526)| +|[CSV to Excel](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CSV-to-Excel)|[xemeds](https://github.com/xemeds) | +|[Caesar Cipher](caesar_cipher) |[epi052](https://github.com/epi052) | +|[Caesar Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/caesar_cipher) |[epi052](https://github.com/epi052) | +|[Checksum tool](Checksum) |[Austin Ewens](https://github.com/aewens) | +|[Checksum tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Checksum) |[Austin Ewens](https://github.com/aewens) | +|[Clean_up_photo](Clean_up_photo_directory)|[sritanmay001](https://github.com/sritanmy001)| +|[Codechef autosubmitter](Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) | +|[Codechef autosubmitter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) | +|[Codeforces Checker](codeforcesChecker)|[Jinesh Parakh](https://github.com/jineshparakh)| +|[Colored B&W Image Converter](Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) | +|[Colored B&W Image Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) | +|[Contact 'Leads' Distribution](Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) | +|[Contact 'Leads' Distribution](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) | +|[Countdown](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Countdown)|[Jeremias Gomes](https://github.com/j3r3mias)| +|[csv_to_json](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/csv_to_json)|[MoiZ](https://github.com/TechBoyy6)| +|[Cricket Matches web Scraper](CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) | +|[Cricket Matches web Scraper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) | +|[Crypt socket](Crypt_Socket)|[Willian GL](https://github.com/williangl) | +|[Crypt socket](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Crypt_Socket)|[Willian GL](https://github.com/williangl) | +|[Cryptocurrency Converter](Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) | +|[Cryptocurrency Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) | +|[Cryptocurrency Prices](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-Prices) |[xemeds](https://github.com/xemeds) | +|[Current City Weather](Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) | +|[Current City Weather](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) | +|[DOH DIG](DOH-Dig/) | [Ryan](https://github.com/awsumco) | +|[DOH DIG](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/DOH-Dig/) | [Ryan](https://github.com/awsumco) | +|[Database-As-Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Database-As-Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) | +|[Directory Tree Visualizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory_Tree_Generator) | [Harpreet Singh Saluja](https://github.com/hssaluja25/) | +|[Directory organizer](Directory-organizer) | [Athul P](https://github.com/athulpn) | +|[Directory organizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory-organizer) | [Athul P](https://github.com/athulpn) | +|[Download Page as PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Download-page-as-pdf)|[Jeremias Gomes](https://github.com/j3r3mias)| +|[Elasticsearch snapshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/elastic-snapshot) | [Joe Ryan](https://github.com/joeryan) | +|[English Theasaurus](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/English_Theasauras/) | [Ansh Dhingra](https://github.com/anshdhinhgra47) | +|[Excel Files Merger](Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| +|[Excel Files Merger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| +|[Excel to List](Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)| +|[Excel to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)| +|[Extended_ip_address_info](extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)| +|[Extended_ip_address_info](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)| +|[Face Recognition](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Face_recognition)|[LOKESH KHURANA](https://github.com/theluvvkhurana)| +|[Fibonacci_Sequence_Generator](Fibonacci_Sequence_Generator) | [John Wesley Kommala](https://github.com/JohnWesleyK)| +|[File Carving](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File_Carving) | [Yeryeong Kim](https://github.com/icarusicarus/) | +|[File Encrypt Decrypt](file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| +|[File Encrypt Decrypt](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| +|[File Organizer](File-Organizer)|[Ayush Bhardwaj](https://github.com/hastagAB)| +|[File Sharing Bot](File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| +|[File Sharing Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| +|[File explorer](File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| +|[File explorer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| +|[Find PhoneNumber in String](Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)| +|[Find PhoneNumber in String](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)| +|[Flash card quizzer](Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) | +|[Flash card quizzer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) | +|[Folder Locker and hider](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Folder%20Locker%20%26%20Hider)|[Prajjwal Pathak](https://github.com/pyguru123)| +|[Folder Manager](Folder_Manager)|[Harsh Raj](https://github.com/DeadProgrammer0)| +|[Frammed text generator](FramedText) | [jcdwalle](https://github.com/jcdwalle)| +|[Frammed text generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/FramedText) | [jcdwalle](https://github.com/jcdwalle)| +|[Get Time By TimeZone](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Get_Time_TimezoneWise)|[Parth Shah](https://github.com/codingis4noobs) | +|[git_automation](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/git_automation)| [loge1998](https://github.com/loge1998)| +|[Github repo creator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Git_repo_creator)|[Harish Tiwari ](https://github.com/optimist2309)| +|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github_Bot)|[Abhilasha](https://github.com/Abhilasha06)| +|[Gmail Mailing Script](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/mailing) |[mayank-kapur](https://github.com/kapurm17) | +|[Gmail Mailing Script](mailing) |[mayank-kapur](https://github.com/kapurm17) | +|[Google Meet Joiner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/google_meet_joiner)|[JohanSanSebastian](https://github.com/JohanSanSebastian)| +|[HTML Table to List](HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)| +|[HTML Table to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)| +|[Handwrting DNN recognizer](Handwriting_Recognizer) |[Chris]() | +|[Handwrting DNN recognizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Handwriting_Recognizer) |[Chris]() | +|[Harry Potter Cloak](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Harry-Potter-Cloak) | [thesmartdeveloperr](https://github.com/thesmartdeveloperr)| +|[IMDB TV Series Info Extractor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) | +|[IMDB TV Series Info Extractor](imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) | +|[IMDBQuerier](IMDBQuerier)|[Burak Bekci](https://github.com/Bekci)| +|[IP Address ](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/ipaddress)|[Xenium](https://github.com/xeniumcode)| +|[Image Compressor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image_Compressor)|[Prathima Kadari](https://github.com/prathimacode-hub)| +|[Image To PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/images2pdf)|[msaoudallah](https://github.com/msaoudallah)| +|[Image To PDF](images2pdf)|[msaoudallah](https://github.com/msaoudallah)| +|[Image Watermarker (batch)](imageWatermarker)|[Remco Halman](https://github.com/remcohalman)| +|[Image circle formatter](Image-Circulator) |[Berk Gureken](https://github.com/bureken) | +|[Image circle formatter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image-Circulator) |[Berk Gureken](https://github.com/bureken) | +|[Independent RSA Communication Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Communication)|[Miguel Santos](https://github.com/wi6n3l)| +|[Instadp Web Scrapper](InstadpShower)|[Psychiquest](https://github.com/psychiquest)| +|[Instadp Web Scrapper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/InstadpShower)|[Psychiquest](https://github.com/psychiquest)| +|[Instagram Video Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/insta_video_downloader)|[Shobhit Bhosure](https://github.com/shobhit99) | +|[JSON file to YAML convertor](https://github.com/saksham117/Awesome-Python-Scripts/tree/master/json-to-yaml)|[Saksham Basandrai](https://github.com/saksham117)| +|[Keylogger](Keylogger) |[Preet Mishra](https://github.com/preetmishra) | +|[Keylogger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Keylogger) |[Preet Mishra](https://github.com/preetmishra) | +|[Medium Article Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)| +|[Medium Article Downloader](medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)| +|[Minecraft Server in background](Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| +|[Minecraft Server in background](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| +|[Own IP locator](Location_Of_Own_IP_Adress)|[Chris]()| +|[Own IP locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Own_IP_Adress)|[Chris]()| +|[PDF2text](PDF2text)|[QuangPH](https://github.com/quangph-1686a)| +|[PX to REM](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PX-to-REM)|[Atthaphon Urairat](https://github.com/uatthaphon) | +|[Pdf to AudioBook Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PdfToAudio)|[Ayesha Gull](https://github.com/ayeshag7/)| +|[Plagiarism_detector](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Plagiarism_detector)|[Akshita Singhal](https://github.com/akshitasinghal4444)| +|[Port Scanner](Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)| +|[Port Scanner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)| +|[Pressure_Converter](https://github.com/E-wave112/Awesome-Python-Scripts/tree/master/Pressure_Converter)|[E-Wave](https://github.com/E-wave112)| +|[Pretty CSV](Pretty-CSV)|[Frizz925](https://github.com/Frizz925)| +|[PyRecorder](PyRecorder)|[Rocky Jain](https://github.com/jainrocky)| +|[py_based_music_player](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/py_based_music_player) | [Bhargav Kuvadiya](https://github.com/techdobz) | +|[Py_Cleaner](Py_Cleaner) | [Abhishek Dobliyal](https://github.com/Abhishek-Dobliyal)| +|[Python Algebra Solver](Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)| +|[Python Algebra Solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)| +|[RSA Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Algorithm)|[Chinmay Rane](https://github.com/Chinmayrane16)| +|[RSA Key Pair Generator](RSA-key-pairs) | [Aditya Parikh](https://github.com/obiwan69) | +|[Random Password Generators](Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)| +|[Random Password Generators](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)| +|[Random name generator](Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)| +|[Random name generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)| +|[Random_Email_Generator](Random_Email_Generator)|[Shubham Garg](https://github.com/shub-garg)| +|[Remove-Duplicate-Files](Remove-Duplicate-Files)|[Aayushi Varma](https://github.com/aayuv17)| +|[Rock-Paper-Scissor Game](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Rock-Paper-Scissor)|[Punit Sakre](https://github.com/punitsakre23)| +|[send_whatsapp_message](send_whatsapp_message)|[Mukesh Prasad](https://github.com/mukeshprasad)| +|[Send messages to sqs in parallel](send_sqs_messages_in_parallel)|[Jinam Shah](https://github.com/jinamshah)| +|[Server Ping](Ping_Server)|[prince]()| +|[Server Ping](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Ping_Server)|[prince]()| +|[Signature photo to PNG converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)| +|[Signature photo to PNG converter](signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)| +|[Simple Webpage Parser](SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)| +|[Simple Webpage Parser](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)| +|[Slideshare downloader](Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)| +|[Slideshare downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)| +|[SMS your location](SmsYourLocation)|[prince]()| +|[SMS your location](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SmsYourLocation)|[prince]()| +|[Spotify Downloader](spotify_downloader)|[Sagar Patel](https://github.com/sagar627)| +|[Squid installer for Ubuntu](Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| +|[Squid installer for Ubuntu](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| +|[SSH Host adder](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SSH_Host_Adder)|[NinoDoko](https://github.com/NinoDoko)| +|[Steg_Tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Steg_Tool/)|[Shankar JP](https://github.com/shankarjp)| +|[sudoku-solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/sudoku-solver) | [Rishabh Umrao](https://github.com/ayedaemon) | +|[Subtitle downloader](Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)| +|[Subtitle downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)| +|[TTS - Text to Speech Mp3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TTS_Text_to_Speech_Mp3)|[Antonio Andrade](https://github.com/xAndrade)| +|[Take Screenshot](Take_screenshot)|[Moad Mohammed Elhebri](https://github.com/moadmmh)| +|[Tambola_Ticket_Generator](Tambola_Ticket_Generator)|[Amandeep_Singh](https://github.com/Synster)| +|[Test Your Internet Speed](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TestMyInternetSpeed)|[TheSmartDeveloperr](https://github.com/thesmartdeveloperr)| +|[TicTacToe AI and 2 players](https://github.com/ShadowHunter15/Awesome-Python-Scripts/tree/master/TicTacToe_AI_and_2_players) | [Omar Sameh](https://github.com/ShadowHunter15) | +|[To Do Bot](To%20Do%20Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| +|[Top_News](Top_News)|[Attupatil](https://github.com/Attupatil)| +|[Translate CLI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TranslateCLI)|[Rodrigo Oliveira](https://github.com/rodrigocam)| +|[URL shortener](url_shortener)|[Sam Ebison](https://github.com/ebsa491)| +|[Upload Files to S3](Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)| +|[Upload Files to S3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)| +|[Vinegère Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/vigenere_cipher)|[victoni](https://github.com/victoni)| +|[Vinegère Cipher](vigenere_cipher)|[victoni](https://github.com/victoni)| +|[Web proxy](Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| +|[Web proxy](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| +|[Website Url Detector](Website_Url_Detector)|[sonniki](https://github.com/sonniki)| +|[Website blocker](Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)| +|[Website blocker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)| +|[WiFi Password Viewer](Wifi-Password)|[Sagar Patel](https://github.com/sagar627)| +|[Wikipedia-Search](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Wikipedia-Search)|[Nissaar](https://github.com/Nissaar) | +|[Word Frequency Counter](Word_Frequency_Counter)|[sonniki](https://github.com/sonniki)| +|[Word generator](Word-generator)|[TGLIDE](https://github.com/TGlide)| +|[Word generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Word-generator)|[TGLIDE](https://github.com/TGlide)| +|[Work log generator](Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| +|[Work log generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| +|[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)| +|[Yoda-speak Translator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/speak_like_yoda)|[sonniki](https://github.com/sonniki) | +|[Yoda-speak Translator](speak_like_yoda)|[sonniki](https://github.com/sonniki) | +|[Youtube video downloader](Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| +|[Youtube video downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| +|[Zabbix API](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| +|[Zabbix API](zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| +|[Zip password cracker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| +|[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| ## How to use: - Clone/Download the directory and navigate to each folder. Or... From a3c26069512f5042a25baa5d3bb537e8f46c42fc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 04:38:50 +0000 Subject: [PATCH 13/49] Bump urllib3 from 1.26.5 to 1.26.17 in /Tweets_Tool Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Tweets_Tool/requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweets_Tool/requirements.txt b/Tweets_Tool/requirements.txt index 4605b9c9..a8ca63d5 100644 --- a/Tweets_Tool/requirements.txt +++ b/Tweets_Tool/requirements.txt @@ -1,7 +1,7 @@ requests==2.31.0 -urllib3==1.26.5 +urllib3==1.26.17 requests==2.31.0 -urllib3==1.26.5 +urllib3==1.26.17 py4j==0.10.4 BeautifulSoup==3.2.0 numpy==1.22.0 From 13809b58c2950417dd9a754948f93ad56fbe77be Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 04:40:10 +0000 Subject: [PATCH 14/49] Bump urllib3 from 1.26.5 to 1.26.17 in /Github_Bot Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Github_Bot/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Github_Bot/requirements.txt b/Github_Bot/requirements.txt index 889260f3..736d3ad9 100644 --- a/Github_Bot/requirements.txt +++ b/Github_Bot/requirements.txt @@ -2,4 +2,4 @@ certifi==2022.12.7 chardet==3.0.4 idna==2.10 requests==2.31.0 -urllib3==1.26.5 +urllib3==1.26.17 From f176f44a1272d1e43977096cf3fa39819a1940ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 04:45:28 +0000 Subject: [PATCH 15/49] Bump urllib3 from 1.26.5 to 1.26.17 in /yts_torrents Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- yts_torrents/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yts_torrents/requirements.txt b/yts_torrents/requirements.txt index 7960a033..e9d02408 100644 --- a/yts_torrents/requirements.txt +++ b/yts_torrents/requirements.txt @@ -2,4 +2,4 @@ certifi==2022.12.7 chardet==3.0.4 idna==2.8 requests==2.31.0 -urllib3==1.26.5 +urllib3==1.26.17 From 6d8d361bb369351ba497879f2e8b6622ce1a70ad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Oct 2023 00:56:15 +0000 Subject: [PATCH 16/49] Bump pillow from 9.3.0 to 10.0.1 in /imageWatermarker Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.3.0 to 10.0.1. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](https://github.com/python-pillow/Pillow/compare/9.3.0...10.0.1) --- updated-dependencies: - dependency-name: pillow dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- imageWatermarker/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/imageWatermarker/requirements.txt b/imageWatermarker/requirements.txt index 3700295f..2e129015 100644 --- a/imageWatermarker/requirements.txt +++ b/imageWatermarker/requirements.txt @@ -1 +1 @@ -Pillow==9.3.0 +Pillow==10.0.1 From 3ceae2504ba1d9ccde4c74644c954356f7f83e05 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Oct 2023 00:56:21 +0000 Subject: [PATCH 17/49] Bump pillow from 9.3.0 to 10.0.1 in /PyRecorder Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.3.0 to 10.0.1. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](https://github.com/python-pillow/Pillow/compare/9.3.0...10.0.1) --- updated-dependencies: - dependency-name: pillow dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- PyRecorder/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PyRecorder/requirements.txt b/PyRecorder/requirements.txt index 922a6db1..132f33ee 100644 --- a/PyRecorder/requirements.txt +++ b/PyRecorder/requirements.txt @@ -1,3 +1,3 @@ numpy==1.22.0 opencv-python==4.1.1.26 -Pillow==9.3.0 +Pillow==10.0.1 From 246b646e6979c82ba3efb4ebd94d5e2cb019dfee Mon Sep 17 00:00:00 2001 From: Rudraksh Karpe Date: Thu, 5 Oct 2023 03:04:16 +0530 Subject: [PATCH 18/49] docs: updated CONTRIBUTING.md guildlines - Fixed minor errors in previous CONTRIBUTING.md - Updated commit message conventions --- CONTRIBUTING.md | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2f71982d..96872437 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -31,11 +31,33 @@ You can see what all you changes using the `git status` command. ## 4. Add all you changes Add all your changes to you branch using the `git add .` command +## 5. Commit your changes +Commit your changes to your branch using `git commit -m "commit message"` command. + +## Commit Message Conventions + +- Start with a short summary (50 characters or less) of the changes made. +- Use the present tense and imperative mood. +- Separate the summary from the body of the message with a blank line. +- Use the body to explain what and why changes were made, as well as any necessary details. +- Additionally, you can consider using [semantic commit messages](https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716?permalink_comment_id=3867882) like "feat:", "docs:", etc. which will provide additional context to the commit message. + +| Commit Type | Description | +| ---- | ---- | +| `feat` | New feature or functionality added | +| `fix` | Bug fix | +| `docs` | Changes to documentation | +| `test` | Adding or updating tests | +| `chore` | Maintenance tasks such as refactoring, dependencies updates, or removing unused code | +| `ci` | Changes to the build or continuous integration process | + ## 5. Push you changes to GitHub -Switch to the main branch using this command: +Switch to the master branch using this command: ```git checkout master``` Push all your changes to GitHub using the command: ```git push --set-upstream origin ``` + + From c2af13606d18513b6337bbabe518fdcfa75f7b73 Mon Sep 17 00:00:00 2001 From: sr2005roy <122456380+sr2005roy@users.noreply.github.com> Date: Thu, 5 Oct 2023 22:54:44 +0530 Subject: [PATCH 19/49] Update README.md Removed all the redundancy in project table Readme.md --- README.md | 106 +++++++++++++----------------------------------------- 1 file changed, 24 insertions(+), 82 deletions(-) diff --git a/README.md b/README.md index 8c3eb439..d8734e30 100644 --- a/README.md +++ b/README.md @@ -24,156 +24,108 @@ So far, the following projects have been integrated to this repo: |--|--| |[2048](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/2048)|[Krunal](https://github.com/gitkp11)| |[AI chatbot](Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) | -|[AI chatbot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) | |[AI for guess the number](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/AI_for_Guess_the_number) | [Omar Sameh](https://github.com/ShadowHunter15) | |[Address locator](Location_Of_Adress) | [Chris]() | -|[Address locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Adress) | [Chris]() | |[Asymmetric Encryption](asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) | -|[Asymmetric Encryption](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) | |[Automated calendar](automated_calendar) | [J.A. Hernández](https://github.com/jesusalberto18) | -|[Automated emails](automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | -|[Automated emails](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | +|[Automated emails](automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | |[Battery_notification](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)| |[Better_CSV_Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Better_CSV_Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) | |[Bitcoin price GUI](Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) | -|[Bitcoin price GUI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) | |[CLI Calculator](cli_calculator)|[Willian GL](https://github.com/williangl) | -|[CLI Calculator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/cli_calculator)|[Willian GL](https://github.com/williangl) | |[COVID visualiser (real-time) ](covid_visualiser)|[Tushar Gupta](https://github.com/tushar5526)| |[CSV to Excel](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CSV-to-Excel)|[xemeds](https://github.com/xemeds) | -|[Caesar Cipher](caesar_cipher) |[epi052](https://github.com/epi052) | -|[Caesar Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/caesar_cipher) |[epi052](https://github.com/epi052) | +|[Caesar Cipher](caesar_cipher) |[epi052](https://github.com/epi052) | |[Checksum tool](Checksum) |[Austin Ewens](https://github.com/aewens) | -|[Checksum tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Checksum) |[Austin Ewens](https://github.com/aewens) | |[Clean_up_photo](Clean_up_photo_directory)|[sritanmay001](https://github.com/sritanmy001)| -|[Codechef autosubmitter](Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) | -|[Codechef autosubmitter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) | +|[Codechef autosubmitter](Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) | |[Codeforces Checker](codeforcesChecker)|[Jinesh Parakh](https://github.com/jineshparakh)| |[Colored B&W Image Converter](Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) | -|[Colored B&W Image Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) | -|[Contact 'Leads' Distribution](Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) | -|[Contact 'Leads' Distribution](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) | +|[Contact 'Leads' Distribution](Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) | |[Countdown](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Countdown)|[Jeremias Gomes](https://github.com/j3r3mias)| |[csv_to_json](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/csv_to_json)|[MoiZ](https://github.com/TechBoyy6)| -|[Cricket Matches web Scraper](CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) | -|[Cricket Matches web Scraper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) | -|[Crypt socket](Crypt_Socket)|[Willian GL](https://github.com/williangl) | -|[Crypt socket](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Crypt_Socket)|[Willian GL](https://github.com/williangl) | -|[Cryptocurrency Converter](Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) | -|[Cryptocurrency Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) | +|[Cricket Matches web Scraper](CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) | +|[Crypt socket](Crypt_Socket)|[Willian GL](https://github.com/williangl) | +|[Cryptocurrency Converter](Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) | |[Cryptocurrency Prices](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-Prices) |[xemeds](https://github.com/xemeds) | -|[Current City Weather](Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) | -|[Current City Weather](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) | +|[Current City Weather](Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) | |[DOH DIG](DOH-Dig/) | [Ryan](https://github.com/awsumco) | -|[DOH DIG](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/DOH-Dig/) | [Ryan](https://github.com/awsumco) | |[Database-As-Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Database-As-Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) | |[Directory Tree Visualizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory_Tree_Generator) | [Harpreet Singh Saluja](https://github.com/hssaluja25/) | |[Directory organizer](Directory-organizer) | [Athul P](https://github.com/athulpn) | -|[Directory organizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory-organizer) | [Athul P](https://github.com/athulpn) | |[Download Page as PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Download-page-as-pdf)|[Jeremias Gomes](https://github.com/j3r3mias)| |[Elasticsearch snapshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/elastic-snapshot) | [Joe Ryan](https://github.com/joeryan) | |[English Theasaurus](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/English_Theasauras/) | [Ansh Dhingra](https://github.com/anshdhinhgra47) | -|[Excel Files Merger](Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| -|[Excel Files Merger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| +|[Excel Files Merger](Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)| |[Excel to List](Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Excel to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Extended_ip_address_info](extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)| -|[Extended_ip_address_info](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)| +|[Extended_ip_address_info](extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)| |[Face Recognition](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Face_recognition)|[LOKESH KHURANA](https://github.com/theluvvkhurana)| |[Fibonacci_Sequence_Generator](Fibonacci_Sequence_Generator) | [John Wesley Kommala](https://github.com/JohnWesleyK)| |[File Carving](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File_Carving) | [Yeryeong Kim](https://github.com/icarusicarus/) | |[File Encrypt Decrypt](file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| -|[File Encrypt Decrypt](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| |[File Organizer](File-Organizer)|[Ayush Bhardwaj](https://github.com/hastagAB)| |[File Sharing Bot](File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| -|[File Sharing Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| -|[File explorer](File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| -|[File explorer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| +|[File explorer](File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| |[Find PhoneNumber in String](Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)| -|[Find PhoneNumber in String](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)| -|[Flash card quizzer](Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) | -|[Flash card quizzer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) | +|[Flash card quizzer](Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) | |[Folder Locker and hider](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Folder%20Locker%20%26%20Hider)|[Prajjwal Pathak](https://github.com/pyguru123)| |[Folder Manager](Folder_Manager)|[Harsh Raj](https://github.com/DeadProgrammer0)| |[Frammed text generator](FramedText) | [jcdwalle](https://github.com/jcdwalle)| -|[Frammed text generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/FramedText) | [jcdwalle](https://github.com/jcdwalle)| |[Get Time By TimeZone](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Get_Time_TimezoneWise)|[Parth Shah](https://github.com/codingis4noobs) | |[git_automation](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/git_automation)| [loge1998](https://github.com/loge1998)| |[Github repo creator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Git_repo_creator)|[Harish Tiwari ](https://github.com/optimist2309)| -|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github_Bot)|[Abhilasha](https://github.com/Abhilasha06)| -|[Gmail Mailing Script](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/mailing) |[mayank-kapur](https://github.com/kapurm17) | +|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github_Bot)|[Abhilasha](https://github.com/Abhilasha06)| |[Gmail Mailing Script](mailing) |[mayank-kapur](https://github.com/kapurm17) | |[Google Meet Joiner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/google_meet_joiner)|[JohanSanSebastian](https://github.com/JohanSanSebastian)| -|[HTML Table to List](HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[HTML Table to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Handwrting DNN recognizer](Handwriting_Recognizer) |[Chris]() | -|[Handwrting DNN recognizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Handwriting_Recognizer) |[Chris]() | +|[HTML Table to List](HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)| +|[Handwrting DNN recognizer](Handwriting_Recognizer) |[Chris]() | |[Harry Potter Cloak](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Harry-Potter-Cloak) | [thesmartdeveloperr](https://github.com/thesmartdeveloperr)| -|[IMDB TV Series Info Extractor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) | |[IMDB TV Series Info Extractor](imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) | |[IMDBQuerier](IMDBQuerier)|[Burak Bekci](https://github.com/Bekci)| |[IP Address ](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/ipaddress)|[Xenium](https://github.com/xeniumcode)| |[Image Compressor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image_Compressor)|[Prathima Kadari](https://github.com/prathimacode-hub)| -|[Image To PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/images2pdf)|[msaoudallah](https://github.com/msaoudallah)| |[Image To PDF](images2pdf)|[msaoudallah](https://github.com/msaoudallah)| |[Image Watermarker (batch)](imageWatermarker)|[Remco Halman](https://github.com/remcohalman)| |[Image circle formatter](Image-Circulator) |[Berk Gureken](https://github.com/bureken) | -|[Image circle formatter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image-Circulator) |[Berk Gureken](https://github.com/bureken) | |[Independent RSA Communication Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Communication)|[Miguel Santos](https://github.com/wi6n3l)| |[Instadp Web Scrapper](InstadpShower)|[Psychiquest](https://github.com/psychiquest)| -|[Instadp Web Scrapper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/InstadpShower)|[Psychiquest](https://github.com/psychiquest)| |[Instagram Video Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/insta_video_downloader)|[Shobhit Bhosure](https://github.com/shobhit99) | |[JSON file to YAML convertor](https://github.com/saksham117/Awesome-Python-Scripts/tree/master/json-to-yaml)|[Saksham Basandrai](https://github.com/saksham117)| -|[Keylogger](Keylogger) |[Preet Mishra](https://github.com/preetmishra) | -|[Keylogger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Keylogger) |[Preet Mishra](https://github.com/preetmishra) | -|[Medium Article Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)| +|[Keylogger](Keylogger) |[Preet Mishra](https://github.com/preetmishra) | |[Medium Article Downloader](medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)| |[Minecraft Server in background](Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| -|[Minecraft Server in background](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| -|[Own IP locator](Location_Of_Own_IP_Adress)|[Chris]()| -|[Own IP locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Own_IP_Adress)|[Chris]()| +|[Own IP locator](Location_Of_Own_IP_Adress)|[Chris]()| |[PDF2text](PDF2text)|[QuangPH](https://github.com/quangph-1686a)| |[PX to REM](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PX-to-REM)|[Atthaphon Urairat](https://github.com/uatthaphon) | |[Pdf to AudioBook Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PdfToAudio)|[Ayesha Gull](https://github.com/ayeshag7/)| |[Plagiarism_detector](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Plagiarism_detector)|[Akshita Singhal](https://github.com/akshitasinghal4444)| |[Port Scanner](Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)| -|[Port Scanner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)| |[Pressure_Converter](https://github.com/E-wave112/Awesome-Python-Scripts/tree/master/Pressure_Converter)|[E-Wave](https://github.com/E-wave112)| |[Pretty CSV](Pretty-CSV)|[Frizz925](https://github.com/Frizz925)| |[PyRecorder](PyRecorder)|[Rocky Jain](https://github.com/jainrocky)| |[py_based_music_player](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/py_based_music_player) | [Bhargav Kuvadiya](https://github.com/techdobz) | |[Py_Cleaner](Py_Cleaner) | [Abhishek Dobliyal](https://github.com/Abhishek-Dobliyal)| |[Python Algebra Solver](Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)| -|[Python Algebra Solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)| |[RSA Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Algorithm)|[Chinmay Rane](https://github.com/Chinmayrane16)| |[RSA Key Pair Generator](RSA-key-pairs) | [Aditya Parikh](https://github.com/obiwan69) | |[Random Password Generators](Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)| -|[Random Password Generators](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)| -|[Random name generator](Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)| -|[Random name generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)| +|[Random name generator](Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)| |[Random_Email_Generator](Random_Email_Generator)|[Shubham Garg](https://github.com/shub-garg)| |[Remove-Duplicate-Files](Remove-Duplicate-Files)|[Aayushi Varma](https://github.com/aayuv17)| |[Rock-Paper-Scissor Game](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Rock-Paper-Scissor)|[Punit Sakre](https://github.com/punitsakre23)| |[send_whatsapp_message](send_whatsapp_message)|[Mukesh Prasad](https://github.com/mukeshprasad)| |[Send messages to sqs in parallel](send_sqs_messages_in_parallel)|[Jinam Shah](https://github.com/jinamshah)| -|[Server Ping](Ping_Server)|[prince]()| -|[Server Ping](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Ping_Server)|[prince]()| -|[Signature photo to PNG converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)| +|[Server Ping](Ping_Server)|[prince]()| |[Signature photo to PNG converter](signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)| |[Simple Webpage Parser](SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)| -|[Simple Webpage Parser](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)| |[Slideshare downloader](Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)| -|[Slideshare downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)| -|[SMS your location](SmsYourLocation)|[prince]()| -|[SMS your location](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SmsYourLocation)|[prince]()| +|[SMS your location](SmsYourLocation)|[prince]()| |[Spotify Downloader](spotify_downloader)|[Sagar Patel](https://github.com/sagar627)| -|[Squid installer for Ubuntu](Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| -|[Squid installer for Ubuntu](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| +|[Squid installer for Ubuntu](Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| | |[SSH Host adder](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SSH_Host_Adder)|[NinoDoko](https://github.com/NinoDoko)| |[Steg_Tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Steg_Tool/)|[Shankar JP](https://github.com/shankarjp)| |[sudoku-solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/sudoku-solver) | [Rishabh Umrao](https://github.com/ayedaemon) | |[Subtitle downloader](Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)| -|[Subtitle downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)| |[TTS - Text to Speech Mp3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TTS_Text_to_Speech_Mp3)|[Antonio Andrade](https://github.com/xAndrade)| |[Take Screenshot](Take_screenshot)|[Moad Mohammed Elhebri](https://github.com/moadmmh)| |[Tambola_Ticket_Generator](Tambola_Ticket_Generator)|[Amandeep_Singh](https://github.com/Synster)| @@ -184,29 +136,19 @@ So far, the following projects have been integrated to this repo: |[Translate CLI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TranslateCLI)|[Rodrigo Oliveira](https://github.com/rodrigocam)| |[URL shortener](url_shortener)|[Sam Ebison](https://github.com/ebsa491)| |[Upload Files to S3](Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)| -|[Upload Files to S3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)| -|[Vinegère Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/vigenere_cipher)|[victoni](https://github.com/victoni)| |[Vinegère Cipher](vigenere_cipher)|[victoni](https://github.com/victoni)| |[Web proxy](Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| -|[Web proxy](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| |[Website Url Detector](Website_Url_Detector)|[sonniki](https://github.com/sonniki)| -|[Website blocker](Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)| -|[Website blocker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)| +|[Website blocker](Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)| |[WiFi Password Viewer](Wifi-Password)|[Sagar Patel](https://github.com/sagar627)| |[Wikipedia-Search](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Wikipedia-Search)|[Nissaar](https://github.com/Nissaar) | |[Word Frequency Counter](Word_Frequency_Counter)|[sonniki](https://github.com/sonniki)| |[Word generator](Word-generator)|[TGLIDE](https://github.com/TGlide)| -|[Word generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Word-generator)|[TGLIDE](https://github.com/TGlide)| -|[Work log generator](Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| -|[Work log generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| -|[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)| -|[Yoda-speak Translator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/speak_like_yoda)|[sonniki](https://github.com/sonniki) | +|[Work log generator](Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| +|[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)| |[Yoda-speak Translator](speak_like_yoda)|[sonniki](https://github.com/sonniki) | |[Youtube video downloader](Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| -|[Youtube video downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| -|[Zabbix API](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| |[Zabbix API](zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| -|[Zip password cracker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| |[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| ## How to use: From a45360b66b21258f856603cd7c97b2013cd1da18 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Oct 2023 09:03:38 +0000 Subject: [PATCH 20/49] Bump urllib3 from 1.26.5 to 1.26.17 in /url_shortener Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- url_shortener/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/url_shortener/requirements.txt b/url_shortener/requirements.txt index 77b06eef..6b25cddb 100644 --- a/url_shortener/requirements.txt +++ b/url_shortener/requirements.txt @@ -5,4 +5,4 @@ idna==2.10 pkg-resources==0.0.0 requests==2.31.0 soupsieve==2.0.1 -urllib3==1.26.5 +urllib3==1.26.17 From f276cac28fdbfee9356a82a07ff81569c5bc0059 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Oct 2023 09:03:39 +0000 Subject: [PATCH 21/49] Bump urllib3 from 1.26.5 to 1.26.17 in /elastic-snapshot Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- elastic-snapshot/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elastic-snapshot/requirements.txt b/elastic-snapshot/requirements.txt index 889260f3..736d3ad9 100644 --- a/elastic-snapshot/requirements.txt +++ b/elastic-snapshot/requirements.txt @@ -2,4 +2,4 @@ certifi==2022.12.7 chardet==3.0.4 idna==2.10 requests==2.31.0 -urllib3==1.26.5 +urllib3==1.26.17 From 95be2f66e25cf7e9fffde25ad51cb450953f9c0f Mon Sep 17 00:00:00 2001 From: Sagnik Sahoo Date: Fri, 6 Oct 2023 23:33:58 +0530 Subject: [PATCH 22/49] Create scheduler.py --- Task-Scheduler/scheduler.py | 74 +++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 Task-Scheduler/scheduler.py diff --git a/Task-Scheduler/scheduler.py b/Task-Scheduler/scheduler.py new file mode 100644 index 00000000..2538fa46 --- /dev/null +++ b/Task-Scheduler/scheduler.py @@ -0,0 +1,74 @@ +import json +import os +import datetime + +# Define the data file to store tasks +TASKS_FILE = "tasks.json" + +# Load tasks from the data file (if it exists) +tasks = [] + +if os.path.exists(TASKS_FILE): + with open(TASKS_FILE, "r") as file: + tasks = json.load(file) + +def save_tasks(): + # Save tasks to the data file + with open(TASKS_FILE, "w") as file: + json.dump(tasks, file) + +def add_task(): + task_name = input("Enter the task name: ") + due_date = input("Enter the due date (YYYY-MM-DD): ") + + try: + due_date = datetime.datetime.strptime(due_date, "%Y-%m-%d").date() + except ValueError: + print("Invalid date format. Please use YYYY-MM-DD.") + return + + tasks.append({"name": task_name, "due_date": due_date}) + save_tasks() + print(f"Task '{task_name}' added successfully!") + +def view_tasks(): + print("Tasks:") + for idx, task in enumerate(tasks, start=1): + print(f"{idx}. {task['name']} (Due: {task['due_date']})") + +def delete_task(): + view_tasks() + task_index = input("Enter the task number to delete: ") + + try: + task_index = int(task_index) + if 1 <= task_index <= len(tasks): + deleted_task = tasks.pop(task_index - 1) + save_tasks() + print(f"Task '{deleted_task['name']}' deleted successfully!") + else: + print("Invalid task number.") + except ValueError: + print("Invalid input. Please enter a valid task number.") + +while True: + print("\nTask Scheduler Menu:") + print("1. Add Task") + print("2. View Tasks") + print("3. Delete Task") + print("4. Quit") + + choice = input("Enter your choice: ") + + if choice == "1": + add_task() + elif choice == "2": + view_tasks() + elif choice == "3": + delete_task() + elif choice == "4": + break + else: + print("Invalid choice. Please choose a valid option.") + +print("Goodbye!") From ed08bd962581680c7a86cb2c143974e86b254677 Mon Sep 17 00:00:00 2001 From: Sagnik Sahoo Date: Fri, 6 Oct 2023 23:49:47 +0530 Subject: [PATCH 23/49] Create requirements.txt --- Task-Scheduler/requirements.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 Task-Scheduler/requirements.txt diff --git a/Task-Scheduler/requirements.txt b/Task-Scheduler/requirements.txt new file mode 100644 index 00000000..7529c030 --- /dev/null +++ b/Task-Scheduler/requirements.txt @@ -0,0 +1 @@ +pytz==2021.3 From e4aa4ed38cf5a32137f23f00c4698261c7046a40 Mon Sep 17 00:00:00 2001 From: Prathamesh Ghatole Date: Mon, 9 Oct 2023 02:06:09 +0530 Subject: [PATCH 24/49] Added new script 'PDFsplitter' --- PDFsplitter/PDFsplitter.py | 44 ++++++++++++++++++++++++++++++++++++ PDFsplitter/README.md | 22 ++++++++++++++++++ PDFsplitter/requirements.txt | 1 + README.md | 16 +++++++------ 4 files changed, 76 insertions(+), 7 deletions(-) create mode 100644 PDFsplitter/PDFsplitter.py create mode 100644 PDFsplitter/README.md create mode 100644 PDFsplitter/requirements.txt diff --git a/PDFsplitter/PDFsplitter.py b/PDFsplitter/PDFsplitter.py new file mode 100644 index 00000000..1a4ccd1a --- /dev/null +++ b/PDFsplitter/PDFsplitter.py @@ -0,0 +1,44 @@ +import PyPDF2 +import argparse +import os + + +def split_pdf(input_pdf_path, output_folder): + # Open the PDF file + pdf_file = open(input_pdf_path, "rb") + input_pdf_name = os.path.basename(input_pdf_path).split(".")[0] + pdf_reader = PyPDF2.PdfReader(pdf_file) + + # Create the output folder if it doesn't exist + os.makedirs(output_folder, exist_ok=True) + + # Loop through each page and save it as a separate PDF file + for page_num in range(len(pdf_reader.pages)): + pdf_writer = PyPDF2.PdfWriter() + pdf_writer.add_page(pdf_reader.pages[page_num]) + + output_pdf_path = os.path.join( + output_folder, f"{input_pdf_name}_{page_num + 1}.pdf" + ) + + with open(output_pdf_path, "wb") as output_pdf: + pdf_writer.write(output_pdf) + print(f"Page {page_num + 1} saved as {output_pdf_path}") + + # Close the input PDF file + pdf_file.close() + + +if __name__ == "__main__": + parser = argparse.ArgumentParser( + description="Split a PDF file into separate pages") + parser.add_argument( + "input_pdf", help="Input PDF file path") + parser.add_argument( + "output_folder", help="Output folder path for split pages") + args = parser.parse_args() + + input_pdf_path = args.input_pdf + output_folder = args.output_folder + + split_pdf(input_pdf_path, output_folder) diff --git a/PDFsplitter/README.md b/PDFsplitter/README.md new file mode 100644 index 00000000..4359f18d --- /dev/null +++ b/PDFsplitter/README.md @@ -0,0 +1,22 @@ +## PDFsplitter + +This Python script allows you to split a PDF file into separate PDF files, one for each page. It uses the PyPDF2 library to perform the splitting. + +### Usage + +1. Make sure you have Python 3.x installed on your system. + +2. Install the required PyPDF2 library using pip: +```pip install PyPDF2``` + +3. Run the script with the following command: + + `python PDFsplitter.py input_pdf output_folder` +- `input_pdf`: The path to the input PDF file that you want to split. +- `output_folder`: The folder where the split PDF pages will be saved. + +### Example + +To split an input PDF file named `input.pdf` into separate pages and save them in an `output_pages` folder, you can run the following command: + + python PDFsplitter.py input.pdf output_pages \ No newline at end of file diff --git a/PDFsplitter/requirements.txt b/PDFsplitter/requirements.txt new file mode 100644 index 00000000..1bf0c7e4 --- /dev/null +++ b/PDFsplitter/requirements.txt @@ -0,0 +1 @@ +PyPDF2==3.0.1 diff --git a/README.md b/README.md index d8734e30..d97df7a4 100644 --- a/README.md +++ b/README.md @@ -3,13 +3,14 @@ ## Contents: -- [What is this repo?](#what-is-this-repo) -- [What do we have?](#what-do-we-have) -- [How to use?](#how-to-use) -- [Contribution Guidelines](#contributions-guidelines) - - [Steps required to follow before adding any script](#steps-required-to-follow-before-adding-any-script) -- [Contribution Guidelines](#contributions-guidelines) -- [If you like the project](#if-you-like-the-project) +- [Awesome Python Scripts :sunglasses: ](#awesome-python-scripts-sunglasses----) + - [Contents:](#contents) + - [What is this repo?](#what-is-this-repo) + - [What do we have:](#what-do-we-have) + - [How to use:](#how-to-use) + - [Contribution Guidelines:](#contribution-guidelines) + - [Steps required to follow before adding any script](#steps-required-to-follow-before-adding-any-script) +- [If you like the project:](#if-you-like-the-project) - [Want to connect with me?](#want-to-connect-with-me) ## What is this repo? @@ -96,6 +97,7 @@ So far, the following projects have been integrated to this repo: |[Minecraft Server in background](Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)| |[Own IP locator](Location_Of_Own_IP_Adress)|[Chris]()| |[PDF2text](PDF2text)|[QuangPH](https://github.com/quangph-1686a)| +|[PDFsplitter](PDFsplitter)|[Prathamesh-Ghatole](https://github.com/Prathamesh-Ghatole)| |[PX to REM](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PX-to-REM)|[Atthaphon Urairat](https://github.com/uatthaphon) | |[Pdf to AudioBook Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PdfToAudio)|[Ayesha Gull](https://github.com/ayeshag7/)| |[Plagiarism_detector](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Plagiarism_detector)|[Akshita Singhal](https://github.com/akshitasinghal4444)| From 474c4ebb795bf8e628f1e3245698e92f1e7ba4d0 Mon Sep 17 00:00:00 2001 From: Shreeram Date: Thu, 12 Oct 2023 10:43:19 +0530 Subject: [PATCH 25/49] feat: dump the tweets from given username for data analysis --- X_Scrapper/README.md | 22 +++++++++++ X_Scrapper/requirements.txt | 1 + X_Scrapper/x_scraper.py | 77 +++++++++++++++++++++++++++++++++++++ 3 files changed, 100 insertions(+) create mode 100644 X_Scrapper/README.md create mode 100644 X_Scrapper/requirements.txt create mode 100644 X_Scrapper/x_scraper.py diff --git a/X_Scrapper/README.md b/X_Scrapper/README.md new file mode 100644 index 00000000..a50d00d3 --- /dev/null +++ b/X_Scrapper/README.md @@ -0,0 +1,22 @@ +# X Scrapper +Use to scrape the tweets from given username (including the metadata of the tweet - location of user, views, likes etc.) using `tweepy`. + +## Use case +1. To analyze the (sentiment trend of the given user)[https://github.com/iamshreeram/twitter-senti-analyzer] over the period of time (on given topic or anything) +2. Further analysis of user behaviour using geo-location, time of tweets, + +### Requirements + +Python 3.xx +tweepy +```bash +pip install tweepy + +``` + +### Usage +python main.py + + +### Note : +1. This requires you to have the consumer key, consumer secret, access key and access secret from your x.com account diff --git a/X_Scrapper/requirements.txt b/X_Scrapper/requirements.txt new file mode 100644 index 00000000..6e6f414a --- /dev/null +++ b/X_Scrapper/requirements.txt @@ -0,0 +1 @@ +tweepy[async] \ No newline at end of file diff --git a/X_Scrapper/x_scraper.py b/X_Scrapper/x_scraper.py new file mode 100644 index 00000000..692e6cc9 --- /dev/null +++ b/X_Scrapper/x_scraper.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python +# encoding: utf-8 + +import sys +try: + import tweepy #https://github.com/tweepy/tweepy +except ImportError: + print("You'll need tweepy instaled on your system.") + sys.exit() +try: + import csv +except ImportError: + print("You'll need the python csv module instaled on your system.") + sys.exit() + +consumer_key = "xxx" +consumer_secret = "yyy" +access_key = "aa-zzzz" +access_secret = "bbb" + +def get_all_tweets(screen_name): + + if (consumer_key == ""): + print("You need to set up the script first. Edit it and add your keys.") + return + + #Twitter only allows access to a users most recent 3240 tweets with this method + + #authorize x, initialize tweepy + auth = tweepy.OAuthHandler(consumer_key, consumer_secret) + auth.set_access_token(access_key, access_secret) + api = tweepy.API(auth) + + #initialize a list to hold all the tweepy Tweets + alltweets = [] + + #make initial request for most recent tweets (200 is the maximum allowed count) + new_tweets = api.user_timeline(screen_name = screen_name,count=200) + + #save most recent tweets + alltweets.extend(new_tweets) + + #save the id of the oldest tweet less one + oldest = alltweets[-1].id - 1 + + #keep grabbing tweets until there are no tweets left to grab + while len(new_tweets) > 0: + print("getting tweets before %s" % (oldest)) + + #all subsiquent requests use the max_id param to prevent duplicates + new_tweets = api.user_timeline(screen_name = screen_name,count=200,max_id=oldest) + + #save most recent tweets + alltweets.extend(new_tweets) + + #update the id of the oldest tweet less one + oldest = alltweets[-1].id - 1 + + print("...%s tweets downloaded so far" % (len(alltweets))) + + #transform the tweepy tweets into a 2D array that will populate the csv + outtweets = [[tweet.id_str, tweet.created_at, tweet.text] for tweet in alltweets] + + #write the csv + with open('%s_tweets.csv' % screen_name, 'w') as f: + writer = csv.writer(f) + writer.writerow(["id","created_at","text"]) + writer.writerows(outtweets) + + pass + + +if __name__ == '__main__': + if (len(sys.argv) == 2): + get_all_tweets(sys.argv[1]) + else: + print("Please add the x account you want to back up as an argument.") From ad9e42044f50c38b1ca5ac31c80329b73984e5d4 Mon Sep 17 00:00:00 2001 From: Shreeram Date: Thu, 12 Oct 2023 10:50:07 +0530 Subject: [PATCH 26/49] feat: dump the tweets from given username for data analysis --- .github/workflows/PULL_REQUEST_TEMPLATE.md | 8 ++++---- README.md | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/PULL_REQUEST_TEMPLATE.md b/.github/workflows/PULL_REQUEST_TEMPLATE.md index 2c09e445..20752729 100644 --- a/.github/workflows/PULL_REQUEST_TEMPLATE.md +++ b/.github/workflows/PULL_REQUEST_TEMPLATE.md @@ -5,11 +5,11 @@ ## Checklist -- [ ] I have read and followed the [Contribution Guidlines](https://github.com/hastagAB/Awesome-Python-Scripts#contribution-guidelines-) before creating this PR. -- [ ] I've added a new Script -- [ ] Script is tested and running perfectly fine on my system +- [x] I have read and followed the [Contribution Guidlines](https://github.com/hastagAB/Awesome-Python-Scripts#contribution-guidelines-) before creating this PR. +- [x] I've added a new Script +- [x] Script is tested and running perfectly fine on my system - [ ] PR is regarding the Documetation -- [ ] This change requires a documentation update +- [x] This change requires a documentation update diff --git a/README.md b/README.md index d97df7a4..51cf9bb9 100644 --- a/README.md +++ b/README.md @@ -147,6 +147,7 @@ So far, the following projects have been integrated to this repo: |[Word Frequency Counter](Word_Frequency_Counter)|[sonniki](https://github.com/sonniki)| |[Word generator](Word-generator)|[TGLIDE](https://github.com/TGlide)| |[Work log generator](Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)| +|[X Scrapper](X_Scrapper)|[Shreeram](https://github.com/iamshreeram)| |[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)| |[Yoda-speak Translator](speak_like_yoda)|[sonniki](https://github.com/sonniki) | |[Youtube video downloader](Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| From 6ebff0c56a504e7082d0c7f0f1ce123b75b660c2 Mon Sep 17 00:00:00 2001 From: Shreeram Date: Thu, 12 Oct 2023 10:53:39 +0530 Subject: [PATCH 27/49] Update requirements.txt --- X_Scrapper/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/X_Scrapper/requirements.txt b/X_Scrapper/requirements.txt index 6e6f414a..e805b74f 100644 --- a/X_Scrapper/requirements.txt +++ b/X_Scrapper/requirements.txt @@ -1 +1 @@ -tweepy[async] \ No newline at end of file +tweepy==4.3.0 From d67023b3e253c7608c60f1a058debdb53047714e Mon Sep 17 00:00:00 2001 From: Sagnik Sahoo Date: Fri, 13 Oct 2023 14:53:45 +0530 Subject: [PATCH 28/49] Create Readme.md --- Task-Scheduler/Readme.md | 85 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 Task-Scheduler/Readme.md diff --git a/Task-Scheduler/Readme.md b/Task-Scheduler/Readme.md new file mode 100644 index 00000000..9ceeecbd --- /dev/null +++ b/Task-Scheduler/Readme.md @@ -0,0 +1,85 @@ +# Task Scheduler + +This Python script, `task_scheduler.py`, is a simple command-line task management application that allows users to add, view, and delete tasks with due dates. The application stores task data in a JSON file. + +## How to Use + +1. **Installation**: + + - Make sure you have Python installed on your system. + +2. **Run the Application**: + + - Open a terminal or command prompt. + - Navigate to the directory where `task_scheduler.py` is located. + + ``` + $ cd /path/to/directory + ``` + + - Run the script: + + ``` + $ python task_scheduler.py + ``` + +3. **Menu Options**: + + - The application provides the following menu options: + + - **Add Task**: Allows you to add a new task with a name and due date (in YYYY-MM-DD format). + + - **View Tasks**: Displays a list of tasks with their names and due dates. + + - **Delete Task**: Lets you delete a task by specifying its number in the list. + + - **Quit**: Exits the application. + +4. **Data Storage**: + + - The tasks are stored in a JSON file named `tasks.json` in the same directory as the script. + +5. **Error Handling**: + + - The application handles various errors, such as invalid date format or task numbers. + +## Example Usage + +1. **Add Task**: + + - Choose option 1. + - Enter a task name. + - Enter the due date in YYYY-MM-DD format. + +2. **View Tasks**: + + - Choose option 2 to see a list of added tasks with their due dates. + +3. **Delete Task**: + + - Choose option 3. + - Enter the number of the task you want to delete. + +4. **Quit**: + + - Choose option 4 to exit the application. + +## Data Persistence + +The application loads tasks from the `tasks.json` file when it starts and saves tasks back to the file after any additions or deletions. This ensures that your tasks are retained even when the application is closed and reopened. + +## Error Handling + +The application checks for invalid date formats and incorrect task numbers, providing appropriate error messages to guide the user. + +## Important Notes + +- Please ensure that you have Python installed on your system. +- Make sure to provide dates in the specified format (YYYY-MM-DD). +- Be cautious when deleting tasks, as this action is irreversible. + +## Author + +This Python Task Scheduler was created by Sagnik Sahoo. + +Feel free to customize and extend this application to suit your needs. Enjoy managing your tasks! From 7a89f5f0891151bc4462295b746a523ae9207d92 Mon Sep 17 00:00:00 2001 From: Sagnik Sahoo Date: Fri, 13 Oct 2023 15:12:05 +0530 Subject: [PATCH 29/49] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d8734e30..2280b463 100644 --- a/README.md +++ b/README.md @@ -150,6 +150,7 @@ So far, the following projects have been integrated to this repo: |[Youtube video downloader](Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)| |[Zabbix API](zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| |[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| +|[Task Scheduler](Task-Scheduler)|[heysagnik](https://github.com/heysagnik)| ## How to use: - Clone/Download the directory and navigate to each folder. Or... From 2025bd950743869c974b56995e521c330e0d963c Mon Sep 17 00:00:00 2001 From: Vinayak Mali <66154908+malivinayak@users.noreply.github.com> Date: Fri, 13 Oct 2023 16:05:06 +0530 Subject: [PATCH 30/49] Project: FileMagic_Organizer --- FileMagic_Organizer/README.md | 61 ++++++++++++++++++++ FileMagic_Organizer/main.py | 104 ++++++++++++++++++++++++++++++++++ 2 files changed, 165 insertions(+) create mode 100644 FileMagic_Organizer/README.md create mode 100644 FileMagic_Organizer/main.py diff --git a/FileMagic_Organizer/README.md b/FileMagic_Organizer/README.md new file mode 100644 index 00000000..858458d7 --- /dev/null +++ b/FileMagic_Organizer/README.md @@ -0,0 +1,61 @@ +## FileMagic Organizer - Unleash the Power of Order + +Welcome to FileMagic Organizer, where chaos meets its match. This Python script is your ally in the battle against cluttered directories. FileMagic Organizer effortlessly sorts your files into designated categories, bringing harmony to the digital realm. + +## Index +- [Introduction](#) +- [Key Features](#key-features) +- [Getting Started](#getting-started) +- [Options provided](#options-provided) +- [Usage](#usage) +- [Customization](#customization) + +## Key Features: + +- 🔮 **Magical Categorization:** FileMagic Organizer intelligently sorts files by type, creating a structured and easily navigable file system. + +- 📅 **Chronological Arrangement:** Dive into the past with chronological organization, unveiling the history of your files in an orderly timeline. + +📏 **Size-based Sorting:** Experience the wizardry of size-based categorization, with files neatly grouped into small, medium, and large categories. + +## **Getting Started:** + +1. ⚡ **Clone the Repository:** Embrace the magic by cloning the FileMagic Organizer repository. + +2. 🚀 **Install Dependencies:** Initiate the enchantment with a quick installation of the required Python libraries. + +3. ✨ **Run the Magic Spell:** Execute the script, follow the prompts, and witness the transformation as FileMagic Organizer weaves its organizational magic. + +## Options provided + +- Organize files by type (e.g., images, documents, videos). +- Organize files by creation date into a hierarchical structure of year and month. +- Categorize files by size into small, medium, and large categories. + +## Usage + +1. **Clone the Repository:** + + ```bash + git clone https://github.com/malivinayak/file-organizer.git + cd file-organizer + ``` + +2. **Install Dependencies:** + + Ensure you have Python installed. Install the required libraries: + + ```bash + pip install -r requirements.txt + ``` + +3. **Run the Script:** + + ```bash + python organize_files.py + ``` + +## Customization + +- Adjust the file type categories, file extensions, and any other settings in the script based on your needs. +- Modify the size categories and ranges in the script for organizing files by size. diff --git a/FileMagic_Organizer/main.py b/FileMagic_Organizer/main.py new file mode 100644 index 00000000..d18be31e --- /dev/null +++ b/FileMagic_Organizer/main.py @@ -0,0 +1,104 @@ +import os +import shutil +import datetime + +def categorize_by_size(file_size): + # Define size categories and their ranges in bytes + size_categories = { + 'small': (0, 1024), # Up to 1 KB + 'medium': (1025, 1024 * 1024), # 1 KB to 1 MB + 'large': (1024 * 1025, float('inf')) # Larger than 1 MB + } + + for category, (min_size, max_size) in size_categories.items(): + if min_size <= file_size < max_size: + return category + + return 'unknown' + +def organize_files(source_dir, destination_dir, organize_by_type=True, organize_by_date=True, organize_by_size=True): + # Create a dictionary to map file extensions to corresponding folders + file_types = { + 'images': ['.png', '.jpg', '.jpeg', '.gif'], + 'documents': ['.pdf', '.docx', '.txt'], + 'videos': ['.mp4', '.avi', '.mkv'], + 'other': [] # Add more categories and file extensions as needed + } + + # Create destination subdirectories if they don't exist + if organize_by_type: + for folder in file_types: + folder_path = os.path.join(destination_dir, folder) + os.makedirs(folder_path, exist_ok=True) + + if organize_by_date: + for year in range(2010, 2030): # Adjust the range based on your needs + year_folder = os.path.join(destination_dir, str(year)) + os.makedirs(year_folder, exist_ok=True) + + for month in range(1, 13): + month_folder = os.path.join(year_folder, f"{month:02d}") + os.makedirs(month_folder, exist_ok=True) + + if organize_by_size: + for size_category in ['small', 'medium', 'large']: + size_folder = os.path.join(destination_dir, size_category) + os.makedirs(size_folder, exist_ok=True) + + # Scan the source directory and organize files + for filename in os.listdir(source_dir): + file_path = os.path.join(source_dir, filename) + + if os.path.isfile(file_path): + # Determine the file type based on extension + file_type = None + for category, extensions in file_types.items(): + if any(filename.lower().endswith(ext) for ext in extensions): + file_type = category + break + + if organize_by_type and file_type: + # Move the file to the corresponding subdirectory + destination_folder = os.path.join(destination_dir, file_type) + destination_path = os.path.join(destination_folder, filename) + shutil.move(file_path, destination_path) + print(f"Moved: {filename} to {file_type} folder") + + if organize_by_date: + # Get the creation date of the file + creation_time = os.path.getctime(file_path) + creation_date = datetime.datetime.fromtimestamp(creation_time) + + # Determine the destination folder based on creation date + destination_folder = os.path.join( + destination_dir, + str(creation_date.year), + f"{creation_date.month:02d}", + ) + + # Move the file to the corresponding subdirectory + destination_path = os.path.join(destination_folder, filename) + shutil.move(file_path, destination_path) + print(f"Moved: {filename} to {creation_date.year}/{creation_date.month:02d} folder") + + if organize_by_size: + # Get the size of the file in bytes + file_size = os.path.getsize(file_path) + + # Determine the destination folder based on file size + size_category = categorize_by_size(file_size) + destination_folder = os.path.join(destination_dir, size_category) + destination_path = os.path.join(destination_folder, filename) + shutil.move(file_path, destination_path) + print(f"Moved: {filename} to {size_category} folder") + +# Get source and destination directories from the user +source_directory = input("Enter the source directory path: ") +destination_directory = input("Enter the destination directory path: ") + +# Ask the user how they want to organize the files +organize_by_type = input("Organize by file type? (yes/no): ").lower() == 'yes' +organize_by_date = input("Organize by creation date? (yes/no): ").lower() == 'yes' +organize_by_size = input("Organize by size? (yes/no): ").lower() == 'yes' + +organize_files(source_directory, destination_directory, organize_by_type, organize_by_date, organize_by_size) From b1c3fae2e79090d5034e0901a98462cf93f2f8e0 Mon Sep 17 00:00:00 2001 From: Vinayak Mali <66154908+malivinayak@users.noreply.github.com> Date: Fri, 13 Oct 2023 16:07:14 +0530 Subject: [PATCH 31/49] Adding Project Name --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index add60b21..3fec59d8 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,7 @@ So far, the following projects have been integrated to this repo: |[Fibonacci_Sequence_Generator](Fibonacci_Sequence_Generator) | [John Wesley Kommala](https://github.com/JohnWesleyK)| |[File Carving](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File_Carving) | [Yeryeong Kim](https://github.com/icarusicarus/) | |[File Encrypt Decrypt](file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)| +|[FileMagic Organizer](./FileMagic_Organizer)|[malivinayak](https://github.com/malivinayak)| |[File Organizer](File-Organizer)|[Ayush Bhardwaj](https://github.com/hastagAB)| |[File Sharing Bot](File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)| |[File explorer](File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)| From 842ba58633e9b66f1b85b7c443d1c905e064e189 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 01:26:03 +0000 Subject: [PATCH 32/49] Bump urllib3 from 1.26.17 to 1.26.18 in /yts_torrents Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- yts_torrents/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yts_torrents/requirements.txt b/yts_torrents/requirements.txt index 2c08cd0d..31392620 100644 --- a/yts_torrents/requirements.txt +++ b/yts_torrents/requirements.txt @@ -2,4 +2,4 @@ certifi==2023.7.22 chardet==3.0.4 idna==2.8 requests==2.31.0 -urllib3==1.26.17 +urllib3==1.26.18 From d2ddb537482d661f3a0f5314bda9c46364809e14 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 10:33:30 +0000 Subject: [PATCH 33/49] Bump urllib3 from 1.26.17 to 1.26.18 in /elastic-snapshot Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- elastic-snapshot/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elastic-snapshot/requirements.txt b/elastic-snapshot/requirements.txt index d625b212..ab0195e5 100644 --- a/elastic-snapshot/requirements.txt +++ b/elastic-snapshot/requirements.txt @@ -2,4 +2,4 @@ certifi==2023.7.22 chardet==3.0.4 idna==2.10 requests==2.31.0 -urllib3==1.26.17 +urllib3==1.26.18 From 2851e6c2aa0b1badce159bb4af43c0662227fbdb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 10:33:31 +0000 Subject: [PATCH 34/49] Bump urllib3 from 1.26.17 to 1.26.18 in /Github_Bot Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Github_Bot/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Github_Bot/requirements.txt b/Github_Bot/requirements.txt index d625b212..ab0195e5 100644 --- a/Github_Bot/requirements.txt +++ b/Github_Bot/requirements.txt @@ -2,4 +2,4 @@ certifi==2023.7.22 chardet==3.0.4 idna==2.10 requests==2.31.0 -urllib3==1.26.17 +urllib3==1.26.18 From 7f0041ff941aec525c4de7e0b749a1e7843f79d5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Oct 2023 09:10:15 +0000 Subject: [PATCH 35/49] Bump urllib3 from 1.26.17 to 1.26.18 in /url_shortener Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- url_shortener/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/url_shortener/requirements.txt b/url_shortener/requirements.txt index 8132f748..633cb1ef 100644 --- a/url_shortener/requirements.txt +++ b/url_shortener/requirements.txt @@ -5,4 +5,4 @@ idna==2.10 pkg-resources==0.0.0 requests==2.31.0 soupsieve==2.0.1 -urllib3==1.26.17 +urllib3==1.26.18 From 9dcc29d3bfab5fcaaf426392a9b42b66d91fc546 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Oct 2023 09:10:58 +0000 Subject: [PATCH 36/49] Bump urllib3 from 1.26.17 to 1.26.18 in /Tweets_Tool Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Tweets_Tool/requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweets_Tool/requirements.txt b/Tweets_Tool/requirements.txt index a8ca63d5..c310915b 100644 --- a/Tweets_Tool/requirements.txt +++ b/Tweets_Tool/requirements.txt @@ -1,7 +1,7 @@ requests==2.31.0 -urllib3==1.26.17 +urllib3==1.26.18 requests==2.31.0 -urllib3==1.26.17 +urllib3==1.26.18 py4j==0.10.4 BeautifulSoup==3.2.0 numpy==1.22.0 From f3376db8d3cfbc94b94d1bdc0c19175ad97ffa8e Mon Sep 17 00:00:00 2001 From: gaurovgiri Date: Tue, 24 Oct 2023 15:01:13 +0545 Subject: [PATCH 37/49] add github review comment automating script --- Github-Review-Bot/README.md | 33 +++++++++++++++++++++ Github-Review-Bot/main.py | 57 +++++++++++++++++++++++++++++++++++++ 2 files changed, 90 insertions(+) create mode 100644 Github-Review-Bot/README.md create mode 100644 Github-Review-Bot/main.py diff --git a/Github-Review-Bot/README.md b/Github-Review-Bot/README.md new file mode 100644 index 00000000..0c331672 --- /dev/null +++ b/Github-Review-Bot/README.md @@ -0,0 +1,33 @@ +# GitHub Pull Request Review Script + +This Python script allows you to automatically review all pull requests in a specified GitHub repository. + +## Prerequisites + +Before you can use this script, ensure you have the following: + +- Python installed on your system. +- The `selenium` Python package. You can install it using `pip`: + + ``` + pip install selenium + ``` + +- [GeckoDriver](https://github.com/mozilla/geckodriver) for Firefox. Make sure to download the correct version for your system. + +- A GitHub account with the necessary access rights to review pull requests in the target repository. + +## Usage + +1. Clone or download this repository to your local machine. + +2. Open the script `github_pull_request_review.py` in a text editor or Python IDE. + +3. Run the script by executing: + +```bash +python main.py +``` +4. Answer the prompt + +5. The script will start add review comments. \ No newline at end of file diff --git a/Github-Review-Bot/main.py b/Github-Review-Bot/main.py new file mode 100644 index 00000000..e030760f --- /dev/null +++ b/Github-Review-Bot/main.py @@ -0,0 +1,57 @@ +# Python Script to review all the pull request of mentioned repository + +from selenium.webdriver import Firefox, ActionChains +from selenium.webdriver.common.by import By +import random +from selenium.webdriver.common.keys import Keys + +username = None +password = None + +class Github: + + def __init__(self, repo_owner, repo_name): + self.base_url = "https://github.com/" + self.repo_owner = repo_owner + self.repo_name = repo_name + self.isLogin = False + self.driver = Firefox() + self.pull_requests = None + + def login(self): + self.driver.get(self.base_url+"/login") + self.driver.find_element(by=By.ID, value="login_field").send_keys(username) + self.driver.find_element(by=By.ID, value="password").send_keys(password) + self.driver.find_element(by=By.NAME, value="commit").click() + self.isLogin = True + + def writeReview(self): + if not self.isLogin: + self.login() + + self.driver.get(self.base_url+self.repo_owner+"/"+self.repo_name+"/pulls") + self.driver.implicitly_wait(10) + pull_requests = self.driver.find_elements(by=By.XPATH, value="//a[@data-hovercard-type='pull_request']") + self.pull_requests = [pull_request.get_attribute("href") for pull_request in pull_requests] + + for pull_request in self.pull_requests: + self.driver.get(pull_request+"/files") + self.driver.implicitly_wait(10) + self.driver.find_element(by=By.ID, value="review-changes-modal").click() + self.driver.implicitly_wait(10) + self.driver.find_element(by=By.ID, value="pull_request_review[event]_approve").click() + self.driver.implicitly_wait(10) + self.driver.find_element(by=By.ID, value="pull_request_review_body").send_keys(random.choice(["LGTM", "Looks good to me", "LGTM, thanks for the contribution", "Seems good to me!"])) + self.driver.implicitly_wait(10) + ActionChains(self.driver).key_down(Keys.CONTROL).send_keys(Keys.ENTER).key_up(Keys.CONTROL).perform() + self.driver.implicitly_wait(10) + + +if __name__ == "__main__": + username = input("Enter your username: ") + password = input("Enter your password: ") + + github_owner = input("Enter the repository owner: ") + github_repo = input("Enter the repository name: ") + github = Github(github_owner, github_repo) + github.writeReview() \ No newline at end of file From f1df6af76c9d962c9fe3e39acf026267842b7764 Mon Sep 17 00:00:00 2001 From: gaurovgiri Date: Tue, 24 Oct 2023 15:05:34 +0545 Subject: [PATCH 38/49] update readme --- Github-Review-Bot/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Github-Review-Bot/README.md b/Github-Review-Bot/README.md index 0c331672..2bb979fe 100644 --- a/Github-Review-Bot/README.md +++ b/Github-Review-Bot/README.md @@ -13,7 +13,7 @@ Before you can use this script, ensure you have the following: pip install selenium ``` -- [GeckoDriver](https://github.com/mozilla/geckodriver) for Firefox. Make sure to download the correct version for your system. +- [GeckoDriver](https://github.com/mozilla/geckodriver) for Firefox. Make sure to download the correct version for your system. Or you can replace `FireFox()` with your own webdriver - A GitHub account with the necessary access rights to review pull requests in the target repository. From 51c664311bbdec07acc9abf80dd8683a8afd0369 Mon Sep 17 00:00:00 2001 From: Partha Sarathi Dey Date: Tue, 24 Oct 2023 15:27:02 +0530 Subject: [PATCH 39/49] added the code for pdf password decrypter --- PDF_Password_Decrypter/README.md | 74 ++++++++++++++++++++++++++++ PDF_Password_Decrypter/main.py | 82 ++++++++++++++++++++++++++++++++ 2 files changed, 156 insertions(+) create mode 100644 PDF_Password_Decrypter/README.md create mode 100644 PDF_Password_Decrypter/main.py diff --git a/PDF_Password_Decrypter/README.md b/PDF_Password_Decrypter/README.md new file mode 100644 index 00000000..01a50491 --- /dev/null +++ b/PDF_Password_Decrypter/README.md @@ -0,0 +1,74 @@ +# Decrypt Your Password Protected pdf files Here +**Pdf-Password-Decrypter is a Python application that can be used to decrypt PDF files that are password-protected. This is optimised for Linux with apt** + +# Features ++ Allows users to select a password-protected PDF file to be decrypted. ++ Provides an entry widget for the user to enter the password for the PDF file. ++ Allows users to enter a new name for the decrypted PDF file. ++ Creates a new PDF file that is not password-protected. ++ Allows users to view the decrypted PDF file in the Evince PDF viewer. + +# Upcoming featuers +Some of the upcoming features include: ++ Editing the pdf directly. ++ Lock the pdf with a new password. ++ Unlocking encrypted pdf files with Brute Force attack. ++ Better UI design. ++ Replace tkinter with Kivy module of python. ++ Switch from PyPDF2 to some other python modules as it is no longer maintained. + +# Pre-requisites +To run this Python program you would need these following packages ++ Python(version 3.7 or higher) ++ Tkinter python package ++ PyPDF2 python package(no longer maintained) ++ Evince pdf viewer ++ GIT + +# Installation +You need to install all the prerequisites, follow the commands: ++ Installing python: +``` +sudo apt install python3 -y +``` + ++ Installing Tkinter python package: +``` +sudo apt install python3-tk -y +``` + ++ Installing PyPDF2 python package: +``` +pip install pypdf2 +``` + ++ Installing Evince pdf viewer: +``` +sudo apt install evince -y +``` + ++ Installing Git: +``` +sudo apt install git -y +``` + +# Usage ++ You need to first close this repository: +``` +git clone https://github.com/parthasdey2304/Awesome-Python-Scripts.git +``` + ++ Getting inside the repository: +``` +cd Awesome-Python-Scripts/PDF_Password_Decrypter +``` + ++ Running the python file: +``` +python3 main.py +``` + ++ Done + + +# THANK YOU COMMUNITY!!!! \ No newline at end of file diff --git a/PDF_Password_Decrypter/main.py b/PDF_Password_Decrypter/main.py new file mode 100644 index 00000000..7a36c163 --- /dev/null +++ b/PDF_Password_Decrypter/main.py @@ -0,0 +1,82 @@ +import os +import PyPDF2 +from tkinter import * +from tkinter import filedialog + +# Create a GUI window using tkinter +root = Tk() +root.configure(background='grey') +root.title('PDF Password Remover') +root.geometry('300x350') + +# this is the method select_file which when invoked uses filedialog to open a file and store the path of the file in the variable file_path +def select_file(): + global file_path + file_path = filedialog.askopenfilename() + + # Creating a label to show the file path + Label(root, text=file_path, bg='grey', fg='white').pack(pady=10) + +# this is the method decrypt which when invoked decrypts the file using the password provided by the user +def decrypt(): + passwd = password.get() # getting the password from the entry widget + + # Opening the PDF file with a password + pdf_file = open(file_path, 'rb') + pdf_reader = PyPDF2.PdfReader(pdf_file) + if pdf_reader.is_encrypted: + pdf_reader.decrypt(passwd) + + # Create a new PDF file without password protection + pdf_writer = PyPDF2.PdfWriter() + length = len(pdf_reader.pages) + for page_num in range(length): + pdf_writer.add_page(pdf_reader.pages[length - page_num - 1]) + + # Creating a new file with the name provided by the user + new_file_name = new_file.get()+".pdf" + new_pdf_file = open(new_file_name, 'wb') + pdf_writer.write(new_pdf_file) + + # Closing the files + pdf_file.close() + new_pdf_file.close() + + # Showing the file in a tkinter window + show_pdf() + +# this is a method that has a canvas of 500x700 resizeable to show the pdf file +# def show_pdf(): +# pdf_file = open(new_file.get()+".pdf", 'rb') +# pdf_reader = PyPDF2.PdfReader(pdf_file) +# page = pdf_reader.pages[0] +# page_content = page.extract_text() +# print(page_content) +# pdf_file.close() + +def show_pdf(): + pdf_file = new_file.get()+".pdf" + os.system(f"evince {pdf_file}") + + +# Button to choose the file to be decrypted +Button(root, text='Select File', bg='white', font=('arial', 12, 'normal'), command=select_file).pack(pady=20) + +# Label widget to show the password +Label(root, text='Password: ', bg='grey', fg = 'white', font=('arial', 12, 'normal')).pack() + +# Entry widget to accept the password +password = Entry(root,text='Password', width=20, font=('arial', 12, 'normal'), show='*', border=2) +password.pack(pady=20) + +# Label widget to show the name with which the new file would be stored +Label(root, text='New File Name:', bg='grey', fg = 'white', font=('arial', 12, 'normal')).pack() + +# Entry widget to accept the name with which the new file would be stored +new_file = Entry(root,text='New File Name', width=20, font=('arial', 12, 'normal'), border=2) +new_file.pack(pady=20) + +# Button to decrypt the file +Button(root, text='Decrypt', bg='white', font=('arial', 12, 'normal'), command=decrypt).pack(pady=20) + +root.mainloop() \ No newline at end of file From e7d1f13a2e873436adf250dadfd977c4a9fc3cd7 Mon Sep 17 00:00:00 2001 From: Partha Sarathi Dey Date: Tue, 24 Oct 2023 15:31:15 +0530 Subject: [PATCH 40/49] added my name in the list of the contributors --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3fec59d8..1e24c919 100644 --- a/README.md +++ b/README.md @@ -155,6 +155,7 @@ So far, the following projects have been integrated to this repo: |[Zabbix API](zabbix_api)|[msg4sunny](https://github.com/msg4sunny)| |[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| |[Task Scheduler](Task-Scheduler)|[heysagnik](https://github.com/heysagnik)| +|[PDF Password Decypter](PDF_Password_Decrypter)|[parthasdey2304](https://github.com/parthasdey2304)| ## How to use: - Clone/Download the directory and navigate to each folder. Or... From 8a6dabbed4b5746220811a711566f6c59e5337cb Mon Sep 17 00:00:00 2001 From: gaurovgiri Date: Fri, 3 Nov 2023 10:06:45 +0545 Subject: [PATCH 41/49] add requirements and update in readme --- Github-Review-Bot/requirements.txt | 1 + README.md | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 Github-Review-Bot/requirements.txt diff --git a/Github-Review-Bot/requirements.txt b/Github-Review-Bot/requirements.txt new file mode 100644 index 00000000..954f0db0 --- /dev/null +++ b/Github-Review-Bot/requirements.txt @@ -0,0 +1 @@ +selenium \ No newline at end of file diff --git a/README.md b/README.md index 1e24c919..5d97e1aa 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,8 @@ So far, the following projects have been integrated to this repo: |[Frammed text generator](FramedText) | [jcdwalle](https://github.com/jcdwalle)| |[Get Time By TimeZone](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Get_Time_TimezoneWise)|[Parth Shah](https://github.com/codingis4noobs) | |[git_automation](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/git_automation)| [loge1998](https://github.com/loge1998)| -|[Github repo creator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Git_repo_creator)|[Harish Tiwari ](https://github.com/optimist2309)| +|[Github repo creator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Git_repo_creator)|[Harish Tiwari ](https://github.com/optimist2309)| +|[Github Review Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github-Review-Bot)|[Gaurav Giri](https://github.com/gaurovgiri)| |[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github_Bot)|[Abhilasha](https://github.com/Abhilasha06)| |[Gmail Mailing Script](mailing) |[mayank-kapur](https://github.com/kapurm17) | |[Google Meet Joiner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/google_meet_joiner)|[JohanSanSebastian](https://github.com/JohanSanSebastian)| From b8070b972ed408fef1522da971a630e84a2ea42b Mon Sep 17 00:00:00 2001 From: 4rnv Date: Sun, 3 Dec 2023 15:50:38 +0530 Subject: [PATCH 42/49] Send bulk mail with individualized attachments --- Attachment_Unique_Mail/README.md | 30 ++++++++++++++ Attachment_Unique_Mail/native_script.py | 37 +++++++++++++++++ Attachment_Unique_Mail/requirements.txt | Bin 0 -> 1664 bytes Attachment_Unique_Mail/smtp_script.py | 52 ++++++++++++++++++++++++ 4 files changed, 119 insertions(+) create mode 100644 Attachment_Unique_Mail/README.md create mode 100644 Attachment_Unique_Mail/native_script.py create mode 100644 Attachment_Unique_Mail/requirements.txt create mode 100644 Attachment_Unique_Mail/smtp_script.py diff --git a/Attachment_Unique_Mail/README.md b/Attachment_Unique_Mail/README.md new file mode 100644 index 00000000..d9e16a5d --- /dev/null +++ b/Attachment_Unique_Mail/README.md @@ -0,0 +1,30 @@ +# Mass_Email_Unique_Attachments +Sends mails to a list of addresses, with different attachments. +Useful for mailing personalized certificates, layoff letters and wedding invitations. +Reads data from a CSV file with email addresses and the names of the files which are to be sent as attachments. +# Setup +- Create a folder containing all attachments which are to be sent +- Create a CSV file with two columns, the name of the attachment file, and the mail address of the receiver +- Add the path of the folder and CSV file in your script +# Usage +There are two scripts, the native script will use the Outlook or Windows Mail to send the mails. The mails will be sent from your currently logged-in mail id. This script is suitable for Windows. +The SMTP script allows you to setup a SMTP server to send mails. Follow the comment instructions in the script to setup an SMTP server. This requires you to allow alternative sign-in from your email provider. +The `smtp_server` depends on which mail provider you are using. Common servers for major providers are: +- Yahoo! + - smtp.mail.yahoo.com +- Gmail + - smtp.gmail.com +- Outlook + - smtp.office365.com / smtp-mail.outlook.com + +The password to be entered in `smtp_password` is generated from your email provider settings. +- https://hotter.io/docs/email-accounts/secure-app-gmail/ +- https://superuser.com/questions/1521236/how-to-allow-less-secure-app-access-in-microsoft-email +- https://help.inspectionsupport.com/en/articles/392427-enable-less-secure-apps-for-smtp-use-isn-yahoo-mail + +The first script is suitable for users who don't wish to setup an SMTP server, or don't want to generate a less secure key. + +# Alteration +You can modify the code to change the type of attachments being sent, for example instead of PDFs, you can send Word documents by changing the `pdf_file_name = row['name'] + '.pdf'` to `pdf_file_name = row['name'] + '.docx'`. For images, use .png, .jpg, etc. + +You can also comment out the CC option if you don't wish to CC the mail to anyone. diff --git a/Attachment_Unique_Mail/native_script.py b/Attachment_Unique_Mail/native_script.py new file mode 100644 index 00000000..2fc5a30b --- /dev/null +++ b/Attachment_Unique_Mail/native_script.py @@ -0,0 +1,37 @@ +import win32com.client +import pandas as pd +import os + +# Load the CSV file +csv_file = 'your_file_path_here' # Replace with the path to your CSV file, make sure to have \\ instead of \ +df = pd.read_csv(csv_file) + +# Path to the folder containing the PDFs +pdf_folder_path = 'your_folder_here' # Add the attachment folder you wish to send (name them as per the CSV file) + +# Outlook setup +ol = win32com.client.Dispatch("outlook.application") +olmailitem = 0x0 + +# Sending each mail +for index, row in df.iterrows(): + + newmail = ol.CreateItem(olmailitem) + newmail.Subject = 'enter_subject_here' + newmail.To = row['email'] # Assuming your CSV has a column named 'email' with the mail address + newmail.CC = '' # cc; optional + newmail.Body = '' # text contents of your mail + + # PDF file name and path + pdf_file_name = row['name'] + '.pdf' # Assuming your CSV has a column named 'name' + pdf_file_path = os.path.join(pdf_folder_path, pdf_file_name) + + + if os.path.exists(pdf_file_path): + newmail.Attachments.Add(pdf_file_path) + else: + print(f"PDF file not found for {row['name']}") + + newmail.Send() + +# Note: This script will send emails as soon as it's run. Be careful! \ No newline at end of file diff --git a/Attachment_Unique_Mail/requirements.txt b/Attachment_Unique_Mail/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..87f2d1579502535a4405ede70d6f83335455614a GIT binary patch literal 1664 zcmZ{l&2Ab&5QO_2DUX5$tV8TWZcz@FB3Vi#A0xahm;`p$FzX*4K1qGuJ1kg<(111F zQ&nBvGyd~?Zmm9zR%Nx;&OYfgu?zcX@9mw){%(2jJX)nrc<$X8{2i09U#}{ds%hynda^m6Z@)#Q_V=a}fb}Cg* zFI#B}S5SphgIlL3lX7uk?^V{WGThBPYiX;M1r7=>T^W3H)m7Suil!m@RR}xz)rskw{$2{}6r*sq zt+;Y4hj|1Z!n@8C@x)JD2O+J%BDgH?XPm42}*vR z80whwCuM~*x5BxxJNtgj;oihV!m*VG?m7y1Lzws>n&fMv_{ck*gnX(PM$n?qphY#6 zvPb{XevaPR{n1_OAKVSJL$5l&FU$@v<6caI3(r1bg>+CwA(Zft_mA0pd4oa+^5l^7 zsH!T*9Ht;{MmWK34UFg?KIO=xI&eNGV8^RMmy*yIav5dp&fMkDp5$2T+E@0&b>eU> zCEQVd^QrJA@D6=1;)YM9B;MZWcc-~yD%Wy0ZbY7o_}_6S2JRbgY}emxGH^EDu)i>a B>k Date: Sun, 3 Dec 2023 16:37:20 +0530 Subject: [PATCH 43/49] Updated README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5d97e1aa..ce326a36 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ So far, the following projects have been integrated to this repo: |[AI for guess the number](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/AI_for_Guess_the_number) | [Omar Sameh](https://github.com/ShadowHunter15) | |[Address locator](Location_Of_Adress) | [Chris]() | |[Asymmetric Encryption](asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) | +|[Attachment Unique Mail](Attachment_Unique_Mail) |[Arnav Dandekar](https://github.com/4rnv) | |[Automated calendar](automated_calendar) | [J.A. Hernández](https://github.com/jesusalberto18) | |[Automated emails](automated_email) | [Suvigya](https://github.com/SuvigyaJain1) | |[Battery_notification](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)| From 8f87f107adb6ba9341e857d8c46c22cb3d510055 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Jan 2024 22:02:36 +0000 Subject: [PATCH 44/49] Bump pillow from 10.0.1 to 10.2.0 in /imageWatermarker Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.1 to 10.2.0. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](https://github.com/python-pillow/Pillow/compare/10.0.1...10.2.0) --- updated-dependencies: - dependency-name: pillow dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- imageWatermarker/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/imageWatermarker/requirements.txt b/imageWatermarker/requirements.txt index 2e129015..636135b1 100644 --- a/imageWatermarker/requirements.txt +++ b/imageWatermarker/requirements.txt @@ -1 +1 @@ -Pillow==10.0.1 +Pillow==10.2.0 From e2158064d3553562f348479239c3e7838c0f1bc3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Jan 2024 22:04:56 +0000 Subject: [PATCH 45/49] Bump pillow from 10.0.1 to 10.2.0 in /PyRecorder Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.1 to 10.2.0. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](https://github.com/python-pillow/Pillow/compare/10.0.1...10.2.0) --- updated-dependencies: - dependency-name: pillow dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- PyRecorder/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PyRecorder/requirements.txt b/PyRecorder/requirements.txt index 132f33ee..ef5a205a 100644 --- a/PyRecorder/requirements.txt +++ b/PyRecorder/requirements.txt @@ -1,3 +1,3 @@ numpy==1.22.0 opencv-python==4.1.1.26 -Pillow==10.0.1 +Pillow==10.2.0 From e261ff5240e59e7bd41311721ebf98258e906b53 Mon Sep 17 00:00:00 2001 From: Soumya Chakraborty <94857677+SoumyaOk4-4@users.noreply.github.com> Date: Tue, 28 May 2024 20:07:41 +0530 Subject: [PATCH 46/49] fix: Replace broken PyPI logo link and add social media logos Replaced the broken PyPI logo link in the README.md file with a working one. Additionally, added social media logos instead of text links at the bottom of the README for a better visual representation. --- README.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index ce326a36..1e95db7f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,6 @@ -# Awesome Python Scripts :sunglasses: PyPI [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/hastagAB/Awesome-Python-Scripts) ![GitHub stars](https://img.shields.io/github/stars/hastagAB/Awesome-Python-Scripts?style=social) +# Awesome Python Scripts :snake: + +PyPI [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/hastagAB/Awesome-Python-Scripts) ![GitHub stars](https://img.shields.io/github/stars/hastagAB/Awesome-Python-Scripts?style=social) ## Contents: @@ -197,15 +199,15 @@ Remember to star the repo if you love the scripts~ :wink: - Only One Commit per PR is Adviced. # If you like the project: -- Star this Repo - [Awesome Python Scripts](https://github.com/hastagAB/Awesome-Python-Scripts) +- **Star this Repo - [Awesome Python Scripts](https://github.com/hastagAB/Awesome-Python-Scripts)** -- Follow me on GitHub - [Ayush Bhardwaj](https://github.com/hastagAB) +- **Follow me on GitHub - [Ayush Bhardwaj](https://github.com/hastagAB)** -# Want to connect with me? -- [LinkedIn](https://www.linkedin.com/in/hastagab/) -- [Twitter](https://twitter.com/HastagAB) -- [Facebook](https://www.facebook.com/SirHastagAB) -- [Instagram](https://www.instagram.com/sirhastagab/) +## Want to Connect with Me? +[Linkedin](https://www.linkedin.com/in/hastagab/) +[X/Twitter](https://twitter.com/HastagAB) +[Facebook](https://www.facebook.com/SirHastagAB) +[Instagram](https://www.instagram.com/sirhastagab/) [![](https://img.shields.io/badge/Made%20With%20❤️%20By-HastagAB-red)](https://github.com/hastagAB) From d8880df87bdd1a49c004b1382ae763aaf49f29c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Jun 2024 01:29:01 +0000 Subject: [PATCH 47/49] Bump urllib3 from 1.26.18 to 1.26.19 in /yts_torrents Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.18 to 1.26.19. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/1.26.19/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.18...1.26.19) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- yts_torrents/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yts_torrents/requirements.txt b/yts_torrents/requirements.txt index 31392620..4faa0117 100644 --- a/yts_torrents/requirements.txt +++ b/yts_torrents/requirements.txt @@ -2,4 +2,4 @@ certifi==2023.7.22 chardet==3.0.4 idna==2.8 requests==2.31.0 -urllib3==1.26.18 +urllib3==1.26.19 From d5e36492743e86e24e93308db2372ca35aa5547f Mon Sep 17 00:00:00 2001 From: Parvesh Rawal Date: Sat, 27 Sep 2025 21:50:09 +0530 Subject: [PATCH 48/49] Add files via upload --- Password_Strength-checker/README.md | 26 +++++++ Password_Strength-checker/strength-checker.py | 71 +++++++++++++++++++ QR-code-generator/QR-generator.py | 10 +++ QR-code-generator/README.md | 22 ++++++ 4 files changed, 129 insertions(+) create mode 100644 Password_Strength-checker/README.md create mode 100644 Password_Strength-checker/strength-checker.py create mode 100644 QR-code-generator/QR-generator.py create mode 100644 QR-code-generator/README.md diff --git a/Password_Strength-checker/README.md b/Password_Strength-checker/README.md new file mode 100644 index 00000000..6fc4a430 --- /dev/null +++ b/Password_Strength-checker/README.md @@ -0,0 +1,26 @@ +# 🔐 Password Strength Checker + +A Python script that evaluates the strength of a password using entropy-based analysis and estimates how long it would take to crack it via brute-force. Designed for security-conscious users, developers, and educators. + +--- + +## 📦 Features + +- ✅ Detects character types: lowercase, uppercase, digits, symbols +- 🧠 Calculates password entropy (in bits) +- ⏳ Estimates brute-force crack time (in seconds and years) +- 🛡️ Provides a strength rating: + - 🔴 Very Weak + - 🟠 Weak + - 🟡 Moderate + - 🟢 Strong + - 🔵 Very Strong +- Uses emoji-enhanced output for clarity and fun + +--- + +## Usage + +```bash +python password_strength.py + diff --git a/Password_Strength-checker/strength-checker.py b/Password_Strength-checker/strength-checker.py new file mode 100644 index 00000000..2cfe4264 --- /dev/null +++ b/Password_Strength-checker/strength-checker.py @@ -0,0 +1,71 @@ +import string +import math + +def password_strength(password): + length = len(password) + + # Character type flags + has_lower = any(c in string.ascii_lowercase for c in password) + has_upper = any(c in string.ascii_uppercase for c in password) + has_digit = any(c in string.digits for c in password) + has_symbol = any(c in string.punctuation for c in password) + + # Character pool size + pool = 0 + pool += 26 if has_lower else 0 + pool += 26 if has_upper else 0 + pool += 10 if has_digit else 0 + pool += len(string.punctuation) if has_symbol else 0 + + # Entropy calculation + entropy = length * math.log2(pool) if pool > 0 else 0 + + # Strength rating + if entropy < 28: + rating = "🔴 Very Weak" + elif entropy < 36: + rating = "🟠 Weak" + elif entropy < 60: + rating = "🟡 Moderate" + elif entropy < 80: + rating = "🟢 Strong" + else: + rating = "🔵 Very Strong" + + # Brute-force time estimate (assuming 10^9 guesses/sec) + guesses_per_sec = 1_000_000_000 + total_combinations = pool ** length + seconds = total_combinations / guesses_per_sec + years = seconds / (60 * 60 * 24 * 365.25) + + return { + "📏 Length": length, + "🔠 Character Types": { + "Lowercase": has_lower, + "Uppercase": has_upper, + "Digits": has_digit, + "Symbols": has_symbol + }, + "🎲 Pool Size": pool, + "🧠 Entropy (bits)": round(entropy, 2), + "🛡️ Strength Rating": rating, + "⏳ Estimated Crack Time": { + "Seconds": f"{seconds:,.0f} seconds", + "Years": f"{years:,.2f} years (at 10⁹ guesses/sec)" + } + } + +# Example usage +pwd = "12345678" +result = password_strength(pwd) + +print("\n🔐 PASSWORD STRENGTH REPORT") +print("════════════════════════════") +for k, v in result.items(): + if isinstance(v, dict): + print(f"{k}:") + for sub_k, sub_v in v.items(): + print(f" - {sub_k}: {'✅' if sub_v is True else '❌' if sub_v is False else sub_v}") + else: + print(f"{k}: {v}") +print("════════════════════════════\n") diff --git a/QR-code-generator/QR-generator.py b/QR-code-generator/QR-generator.py new file mode 100644 index 00000000..a6991819 --- /dev/null +++ b/QR-code-generator/QR-generator.py @@ -0,0 +1,10 @@ +import qrcode as QR + +def create(content, filename): + img = QR.make(content) + img.save(filename) + return f"here is you file saved at {filename}" + +result = create("Pass any info here", "company.png")#info, filename +print(result) + diff --git a/QR-code-generator/README.md b/QR-code-generator/README.md new file mode 100644 index 00000000..e1667d22 --- /dev/null +++ b/QR-code-generator/README.md @@ -0,0 +1,22 @@ +# 📱 QR Code Generator + +A simple Python script to generate QR codes from any text, URL, or data string. Saves the QR code as an image file for easy sharing or embedding. + +--- + +## 🚀 Features + +- ✅ Generate QR codes from any content (text, URL, contact info, etc.) +- 🖼️ Save output as PNG or JPEG +- 🧩 Minimal dependencies +- 🐍 Built with Python and `qrcode` library + +--- + +## 🧪 Requirements + +Install the required library using pip: + +```bash +pip install qrcode + From 603f1747d539b4f78ee14da2f8b12bbe0a392aeb Mon Sep 17 00:00:00 2001 From: Parvesh Rawal Date: Sat, 27 Sep 2025 21:52:30 +0530 Subject: [PATCH 49/49] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 1e95db7f..0ec52354 100644 --- a/README.md +++ b/README.md @@ -160,6 +160,8 @@ So far, the following projects have been integrated to this repo: |[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)| |[Task Scheduler](Task-Scheduler)|[heysagnik](https://github.com/heysagnik)| |[PDF Password Decypter](PDF_Password_Decrypter)|[parthasdey2304](https://github.com/parthasdey2304)| +|[Password Strength Checker](Password_Strength-checker)|[Parveshiiii](https://github.com/Parveshiiii)| +|[QR Code Generator](QR-code-generator)|[Parveshiiii](https://github.com/Parveshiiii)| ## How to use: - Clone/Download the directory and navigate to each folder. Or...