├── CleanDownloads ├── README.md └── src │ └── main.py ├── CopyFileToClip ├── README.md ├── requirements.txt └── src │ └── main.py ├── ExtractPDF ├── README.md ├── requirements.txt └── src │ └── main.py ├── README.md └── URLShortener └── src ├── .history ├── main_20221116160135.py ├── main_20221116160209.py ├── main_20221116160219.py ├── main_20221116160223.py ├── main_20221116160259.py ├── main_20221116160300.py ├── main_20221116160326.py ├── main_20221116160331.py ├── main_20221116160337.py ├── main_20221116160347.py ├── main_20221116160402.py ├── main_20221116160422.py ├── main_20221116160424.py ├── main_20221116160429.py ├── main_20221116160435.py ├── main_20221116160511.py ├── main_20221116160523.py ├── main_20221116160527.py ├── main_20221116160532.py └── main_20221116160534.py └── main.py /CleanDownloads/README.md: -------------------------------------------------------------------------------- 1 | # CleanDownloads 2 | 3 | Small Python Script to clean up your Downloads folder instead of having to do it manually everytime your storage is full because you downloaded 10 ISO Files. :) 4 | 5 | # Install 6 | 7 | 1. Clone Repo 8 | ``` 9 | git clone https://github.com/FujiwaraChoki/PythonAutomation 10 | ``` 11 | 12 | 2. Install PIP Dependencies 13 | ``` 14 | pip3 install -r CleanDownloads/requirements.txt 15 | ``` 16 | 17 | 3. Run Python Script 18 | ``` 19 | python3 CleanDownloads/src/main.py 20 | ``` -------------------------------------------------------------------------------- /CleanDownloads/src/main.py: -------------------------------------------------------------------------------- 1 | import os 2 | import platform 3 | from termcolor import colored 4 | 5 | def main(): 6 | DOWNLOAD_PATH = f'C:\\Users\\{os.getuser()}\\Downloads\\' if 'windows' in platform.\ 7 | platform().lower() else f'/home/{os.getser()}/Downloads/' 8 | 9 | downloaded_files = os.listdir(DOWNLOAD_PATH) 10 | 11 | if len(downloaded_files) > 0: 12 | for file in downloaded_files: 13 | os.system(f'rm -rf {file}') 14 | print(colored('Done deleting files.', 'green')) 15 | else: 16 | print(colored('No files to clean up!', 'green')) 17 | 18 | if __name__ == '__main__': 19 | try: 20 | main() 21 | except Exception as err: 22 | print(colored('An error has occurred:\n{err}', 'red')) 23 | -------------------------------------------------------------------------------- /CopyFileToClip/README.md: -------------------------------------------------------------------------------- 1 | # CopyFileToClip 2 | 3 | This python script allows you to copy the contents of the provided file into the clipboard using the `pyperclip` module. 4 | 5 | # Install 6 | 7 | 1. Clone 8 | ``` 9 | git clone https://github.com/FujiwaraChoki/PythonAutomation 10 | ``` 11 | 12 | 2. Install PIP Dependencies 13 | ``` 14 | pip3 install -r PythonAutomation/CopyFileToClip/requirements.txt 15 | ``` 16 | 17 | 3. Run Python File 18 | ``` 19 | python3 PythonAutomation/CopyFileToClip/src/main.py 20 | ``` -------------------------------------------------------------------------------- /CopyFileToClip/requirements.txt: -------------------------------------------------------------------------------- 1 | termcolor 2 | pyperclip -------------------------------------------------------------------------------- /CopyFileToClip/src/main.py: -------------------------------------------------------------------------------- 1 | import os 2 | import pyperclip 3 | import sys 4 | from termcolor import colored 5 | 6 | def main(): 7 | if len(sys.argv) > 0: 8 | file_name = sys.argv[1] 9 | contents = '' 10 | with open(file_name, 'r'): 11 | contents = file_name.read() 12 | # Finally copy to clipboard 13 | pyperclip.copy(contents) 14 | 15 | else: 16 | print(colored('Please provide a file name!', 'red')) 17 | 18 | if __name__ == '__main__': 19 | try: 20 | main() 21 | except Exception as err: 22 | print(colored(f'An error has occurred:\n{err}', 'red')) 23 | -------------------------------------------------------------------------------- /ExtractPDF/README.md: -------------------------------------------------------------------------------- 1 | # ExtractPDF 2 | 3 | ExtractPDF extracts Text from a PDF file and prints it to the console. 4 | 5 | # Install 6 | 7 | 1. Clone 8 | ``` 9 | git clone https://github.com/FujiwaraChoki/PythonAutomation 10 | ``` 11 | 12 | 2. Install PIP Dependencies 13 | ``` 14 | pip3 install -r PythonAutomation/ExtractPDF/requirements.txt 15 | ``` 16 | 17 | 3. Run Python File 18 | ``` 19 | python3 PythonAutomation/ExtractPDF/src/main.py -------------------------------------------------------------------------------- /ExtractPDF/requirements.txt: -------------------------------------------------------------------------------- 1 | termcolor 2 | PyPDF2 -------------------------------------------------------------------------------- /ExtractPDF/src/main.py: -------------------------------------------------------------------------------- 1 | import os 2 | import PyPDF2 3 | from termcolor import colored 4 | 5 | def main(): 6 | if len(sys.argv) > 1: 7 | file_name = sys.argv[1] 8 | pdf_contents_bytes = None 9 | with open(file_name, 'rb') as cur_file: 10 | pdf_contents_bytes = cur_file.read() 11 | pdf_reader = PyPDF2.PdfFileReader(pdf_contents_bytes) 12 | 13 | pdf_content_str = '' 14 | num_pages = pdf_reader.numPages 15 | 16 | for i in range(num_pages): 17 | pdf_content_str += pdf_reader.getPage(i).extractText() 18 | 19 | print(colored('Successfully extracted text.', 'green')) 20 | print(f'Text:\n{pdf_content_str}') 21 | 22 | 23 | else: 24 | print(colored('Please provide a PDF file name.', 'red')) 25 | 26 | if __name__ == '__main__': 27 | try: 28 | main() 29 | except Exception as err: 30 | print(colored('An error has occurred:\n{err}', 'red')) 31 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PythonAutomation 2 | 3 | I literally dont care if you're using my cuttly token like bro what 😭 4 | 5 | This Repository is a collection of simple Python scripts, which can automate some tedious stuff for you, so you don't have to do the same repeated task anymore. 6 | 7 | ## Author 8 | 9 | The Author of this script is Sami Hindi (@FujiwaraChoki). An aspiring Software Engineer & Cybersecurity specialist. 10 | 11 | ## License 12 | 13 | This Project is licensed under the MIT License. 14 | 15 | ``` 16 | Copyright 2023 Sami Hindi 17 | 18 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 19 | 20 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 21 | 22 | THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | ``` 24 | -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160135.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', resizable=True, finalized=True) 15 | window.Maximize() 16 | while True: 17 | event, values = window.read() 18 | 19 | def get_random_string(): 20 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 21 | string = '' 22 | for i in range(6): 23 | string += random.choice(LETTERS) 24 | return string 25 | 26 | def main(): 27 | KEY = 'd829f629708e423310a0b56df800716c3f748' 28 | url = urllib.parse.quote(sys.argv[1]) 29 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 30 | response = json.loads(r.text) 31 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 32 | 33 | if __name__ == '__main__': 34 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160209.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # 18 | 19 | def get_random_string(): 20 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 21 | string = '' 22 | for i in range(6): 23 | string += random.choice(LETTERS) 24 | return string 25 | 26 | def main(): 27 | KEY = 'd829f629708e423310a0b56df800716c3f748' 28 | url = urllib.parse.quote(sys.argv[1]) 29 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 30 | response = json.loads(r.text) 31 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 32 | 33 | if __name__ == '__main__': 34 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160219.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | 19 | def get_random_string(): 20 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 21 | string = '' 22 | for i in range(6): 23 | string += random.choice(LETTERS) 24 | return string 25 | 26 | def main(): 27 | KEY = 'd829f629708e423310a0b56df800716c3f748' 28 | url = urllib.parse.quote(sys.argv[1]) 29 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 30 | response = json.loads(r.text) 31 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 32 | 33 | if __name__ == '__main__': 34 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160223.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | KEY = 'd829f629708e423310a0b56df800716c3f748' 32 | url = urllib.parse.quote(sys.argv[1]) 33 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 34 | response = json.loads(r.text) 35 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 36 | 37 | if __name__ == '__main__': 38 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160259.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalized=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | url = values['url'] 47 | if not url: 48 | continue 49 | if not url.startswith('http'): 50 | url = 'http://' + url 51 | try: 52 | r = requests.get(url) 53 | except requests.exceptions.ConnectionError: 54 | continue 55 | title = r.headers['title'] 56 | short_url = f'https://shorturl.com/{get_random_string()}' 57 | show_result(short_url, title) 58 | 59 | 60 | if __name__ == '__main__': 61 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160300.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalized=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | url = values['url'] 47 | if not url: 48 | continue 49 | if not url.startswith('http'): 50 | url = 'http://' + url 51 | try: 52 | r = requests.get(url) 53 | except requests.exceptions.ConnectionError: 54 | continue 55 | title = r.headers['title'] 56 | short_url = f'https://shorturl.com/{get_random_string()}' 57 | show_result(short_url, title) 58 | 59 | if __name__ == '__main__': 60 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160326.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalized=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(sys.argv[1]) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | show_result(short_url, title) 52 | 53 | if __name__ == '__main__': 54 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160331.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalized=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(sys.argv[1]) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | show_result(short_url, title) 52 | 53 | if __name__ == '__main__': 54 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160337.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalized=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(values['url']) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | show_result(short_url, title) 52 | 53 | if __name__ == '__main__': 54 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160347.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalized=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(values['url']) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | 52 | if __name__ == '__main__': 53 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160402.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalized=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(values['url']) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | 52 | if __name__ == '__main__': 53 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160422.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 15 | window.Maximize() 16 | 17 | # Check for closed window event 18 | while True: 19 | event, values = window.read() 20 | if event == sg.WIN_CLOSED: 21 | break 22 | 23 | def get_random_string(): 24 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 25 | string = '' 26 | for i in range(6): 27 | string += random.choice(LETTERS) 28 | return string 29 | 30 | def main(): 31 | layout = [ 32 | [sg.Text('URL:'), sg.InputText(key='url')], 33 | [sg.Button('Shorten')] 34 | ] 35 | 36 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 37 | window.Maximize() 38 | 39 | # Check for closed window event 40 | 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(values['url']) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | 52 | if __name__ == '__main__': 53 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160424.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | def show_result(result_url: str, title: str): 9 | layout = [ 10 | [sg.Text(f'Shortened URL: {result_url}')], 11 | [sg.Text(f'Title: {title}')] 12 | ] 13 | 14 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 15 | 16 | # Check for closed window event 17 | while True: 18 | event, values = window.read() 19 | if event == sg.WIN_CLOSED: 20 | break 21 | 22 | def get_random_string(): 23 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 24 | string = '' 25 | for i in range(6): 26 | string += random.choice(LETTERS) 27 | return string 28 | 29 | def main(): 30 | layout = [ 31 | [sg.Text('URL:'), sg.InputText(key='url')], 32 | [sg.Button('Shorten')] 33 | ] 34 | 35 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 36 | window.Maximize() 37 | 38 | # Check for closed window event 39 | 40 | while True: 41 | event, values = window.read() 42 | if event == sg.WIN_CLOSED: 43 | break 44 | if event == 'Shorten': 45 | KEY = 'd829f629708e423310a0b56df800716c3f748' 46 | url = urllib.parse.quote(values['url']) 47 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 48 | response = json.loads(r.text) 49 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 50 | 51 | if __name__ == '__main__': 52 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160429.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')] 14 | ] 15 | 16 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 17 | 18 | # Check for closed window event 19 | while True: 20 | event, values = window.read() 21 | if event == sg.WIN_CLOSED: 22 | break 23 | 24 | def get_random_string(): 25 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 26 | string = '' 27 | for i in range(6): 28 | string += random.choice(LETTERS) 29 | return string 30 | 31 | def main(): 32 | layout = [ 33 | [sg.Text('URL:'), sg.InputText(key='url')], 34 | [sg.Button('Shorten')] 35 | ] 36 | 37 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 38 | window.Maximize() 39 | 40 | # Check for closed window event 41 | 42 | while True: 43 | event, values = window.read() 44 | if event == sg.WIN_CLOSED: 45 | break 46 | if event == 'Shorten': 47 | KEY = 'd829f629708e423310a0b56df800716c3f748' 48 | url = urllib.parse.quote(values['url']) 49 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 50 | response = json.loads(r.text) 51 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 52 | 53 | if __name__ == '__main__': 54 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160435.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import sys 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')] 14 | ] 15 | 16 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 17 | 18 | # Check for closed window event 19 | while True: 20 | event, values = window.read() 21 | if event == sg.WIN_CLOSED: 22 | break 23 | 24 | def get_random_string(): 25 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 26 | string = '' 27 | for i in range(6): 28 | string += random.choice(LETTERS) 29 | return string 30 | 31 | def main(): 32 | layout = [ 33 | [sg.Text('URL:'), sg.InputText(key='url')], 34 | [sg.Button('Shorten')] 35 | ] 36 | 37 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 38 | 39 | # Check for closed window event 40 | while True: 41 | event, values = window.read() 42 | if event == sg.WIN_CLOSED: 43 | break 44 | if event == 'Shorten': 45 | KEY = 'd829f629708e423310a0b56df800716c3f748' 46 | url = urllib.parse.quote(values['url']) 47 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 48 | response = json.loads(r.text) 49 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 50 | 51 | if __name__ == '__main__': 52 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160511.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import pyperclip 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')] 14 | ] 15 | 16 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 17 | 18 | # Check for closed window event 19 | while True: 20 | event, values = window.read() 21 | if event == sg.WIN_CLOSED: 22 | break 23 | 24 | def get_random_string(): 25 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 26 | string = '' 27 | for i in range(6): 28 | string += random.choice(LETTERS) 29 | return string 30 | 31 | def main(): 32 | layout = [ 33 | [sg.Text('URL:'), sg.InputText(key='url')], 34 | [sg.Button('Shorten')] 35 | ] 36 | 37 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 38 | 39 | # Check for closed window event 40 | while True: 41 | event, values = window.read() 42 | if event == sg.WIN_CLOSED: 43 | break 44 | if event == 'Shorten': 45 | KEY = 'd829f629708e423310a0b56df800716c3f748' 46 | url = urllib.parse.quote(values['url']) 47 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 48 | response = json.loads(r.text) 49 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 50 | 51 | if __name__ == '__main__': 52 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160523.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import pyperclip 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')], 14 | [sg.Button('Copy to clipboard'), sg.Button('Close')] 15 | ] 16 | 17 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 18 | 19 | # Check for closed window event 20 | while True: 21 | event, values = window.read() 22 | if event == sg.WIN_CLOSED: 23 | break 24 | 25 | def get_random_string(): 26 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 27 | string = '' 28 | for i in range(6): 29 | string += random.choice(LETTERS) 30 | return string 31 | 32 | def main(): 33 | layout = [ 34 | [sg.Text('URL:'), sg.InputText(key='url')], 35 | [sg.Button('Shorten')] 36 | ] 37 | 38 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 39 | 40 | # Check for closed window event 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(values['url']) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | 52 | if __name__ == '__main__': 53 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160527.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import pyperclip 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')], 14 | [sg.Button('Copy to clipboard'), sg.Button('Close')] 15 | ] 16 | 17 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 18 | 19 | # Check for closed window event 20 | while True: 21 | event, values = window.read() 22 | if event == sg.WIN_CLOSED: 23 | break 24 | 25 | def get_random_string(): 26 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 27 | string = '' 28 | for i in range(6): 29 | string += random.choice(LETTERS) 30 | return string 31 | 32 | def main(): 33 | layout = [ 34 | [sg.Text('URL:'), sg.InputText(key='url')], 35 | [sg.Button('Shorten')] 36 | ] 37 | 38 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 39 | 40 | # Check for closed window event 41 | while True: 42 | event, values = window.read() 43 | if event == sg.WIN_CLOSED: 44 | break 45 | if event == 'Shorten': 46 | KEY = 'd829f629708e423310a0b56df800716c3f748' 47 | url = urllib.parse.quote(values['url']) 48 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 49 | response = json.loads(r.text) 50 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 51 | 52 | if __name__ == '__main__': 53 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160532.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import pyperclip 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')], 14 | [sg.Button('Copy to clipboard'), sg.Button('Close')] 15 | ] 16 | 17 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 18 | 19 | # Check for closed window event 20 | while True: 21 | event, values = window.read() 22 | if event == sg.WIN_CLOSED: 23 | break 24 | if event == 'Copy to clipboard': 25 | 26 | def get_random_string(): 27 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 28 | string = '' 29 | for i in range(6): 30 | string += random.choice(LETTERS) 31 | return string 32 | 33 | def main(): 34 | layout = [ 35 | [sg.Text('URL:'), sg.InputText(key='url')], 36 | [sg.Button('Shorten')] 37 | ] 38 | 39 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 40 | 41 | # Check for closed window event 42 | while True: 43 | event, values = window.read() 44 | if event == sg.WIN_CLOSED: 45 | break 46 | if event == 'Shorten': 47 | KEY = 'd829f629708e423310a0b56df800716c3f748' 48 | url = urllib.parse.quote(values['url']) 49 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 50 | response = json.loads(r.text) 51 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 52 | 53 | if __name__ == '__main__': 54 | main() -------------------------------------------------------------------------------- /URLShortener/src/.history/main_20221116160534.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import pyperclip 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')], 14 | [sg.Button('Copy to clipboard'), sg.Button('Close')] 15 | ] 16 | 17 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 18 | 19 | # Check for closed window event 20 | while True: 21 | event, values = window.read() 22 | if event == sg.WIN_CLOSED: 23 | break 24 | if event == 'Copy to clipboard': 25 | pyperclip.copy(result_url) 26 | sg.popup('Copied to clipboard') 27 | 28 | def get_random_string(): 29 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 30 | string = '' 31 | for i in range(6): 32 | string += random.choice(LETTERS) 33 | return string 34 | 35 | def main(): 36 | layout = [ 37 | [sg.Text('URL:'), sg.InputText(key='url')], 38 | [sg.Button('Shorten')] 39 | ] 40 | 41 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 42 | 43 | # Check for closed window event 44 | while True: 45 | event, values = window.read() 46 | if event == sg.WIN_CLOSED: 47 | break 48 | if event == 'Shorten': 49 | KEY = 'd829f629708e423310a0b56df800716c3f748' 50 | url = urllib.parse.quote(values['url']) 51 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 52 | response = json.loads(r.text) 53 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 54 | 55 | if __name__ == '__main__': 56 | main() -------------------------------------------------------------------------------- /URLShortener/src/main.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import requests 3 | import pyperclip 4 | import random 5 | import json 6 | import PySimpleGUI as sg 7 | 8 | sg.theme('DarkAmber') 9 | 10 | def show_result(result_url: str, title: str): 11 | layout = [ 12 | [sg.Text(f'Shortened URL: {result_url}')], 13 | [sg.Text(f'Title: {title}')], 14 | [sg.Button('Copy to clipboard'), sg.Button('Close')] 15 | ] 16 | 17 | window = sg.Window('', layout=layout, resizable=True, finalize=True) 18 | 19 | # Check for closed window event 20 | while True: 21 | event, values = window.read() 22 | if event == sg.WIN_CLOSED: 23 | break 24 | if event == 'Copy to clipboard': 25 | pyperclip.copy(result_url) 26 | sg.popup('Copied to clipboard') 27 | 28 | def get_random_string(): 29 | LETTERS = 'QWERTZUIOPASDFGHJKLYXCVBNMqwertzuiopasdfghjklyxcvbnm1234567890' 30 | string = '' 31 | for i in range(6): 32 | string += random.choice(LETTERS) 33 | return string 34 | 35 | def main(): 36 | layout = [ 37 | [sg.Text('URL:'), sg.InputText(key='url')], 38 | [sg.Button('Shorten')] 39 | ] 40 | 41 | window = sg.Window('URL Shortener', layout=layout, resizable=True, finalize=True) 42 | 43 | # Check for closed window event 44 | while True: 45 | event, values = window.read() 46 | if event == sg.WIN_CLOSED: 47 | break 48 | if event == 'Shorten': 49 | KEY = 'YOUR_CUTTLY_API_KEY' 50 | url = urllib.parse.quote(values['url']) 51 | r = requests.get('http://cutt.ly/api/api.php?key={}&short={}&name={}'.format(KEY, url, get_random_string())) 52 | response = json.loads(r.text) 53 | show_result(response.get("url")["shortLink"], response.get("url")["title"]) 54 | 55 | if __name__ == '__main__': 56 | main() 57 | --------------------------------------------------------------------------------