├── _config.yml ├── LICENSE.md ├── README.md └── start.py /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-tactile -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 ebankoff 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [![image](https://i.ibb.co/ZXQxkxM/Comp-1-00000-1.png)](https://www.youtube.com/watch?v=dQw4w9WgXcQ&list=PLrpgO-fUNO4OKpFbFXb2cQlF72Yj3ppJv) 2 | # Free proxies and useragents 3 | 4 | # EN 5 | 6 | # 📌 Installation and run 7 | 8 | * 1 way 9 | * git clone https://github.com/un1cum/free-proxies-and-useragents 10 | * cd free-proxies-and-useragents 11 | * start.py 12 | * 2 way 13 | * pip3 install free_proxies_useragents 14 | * freeprx 15 | 16 | * Required pip libraries (pip install library name) 17 | * lxml 18 | * beautifulsoup4 19 | * bs4 20 | * progressbar 21 | * colorama 22 | 23 | * Check installed libraries 24 | * pip list 25 | 26 | # 📌 Problems and their solutions 27 | 28 | If you see something like this: 29 | 30 | ![image](https://i.ibb.co/XWNtL0S/Screenshot-1.png "no module named") 31 | 32 | This means that you don't have the library that is specified in the error, in this case: "_ctypes". You need to enter in the terminal or cmd: 33 | 34 | * pip install the name of the required library (example: pip install _ctypes) 35 | 36 | # 📌 Donate for coffee 37 | 38 | * **Smart chain: 0x96a0B6E4274771D5f3F8e59564b58C35D74D8Cc1** 39 | * **Bitcoin: bc1qxfvstf99kyuc5x5uugxtsh3m6w3a73ruzfav7e** 40 | * **Ethereum: 0x96a0B6E4274771D5f3F8e59564b58C35D74D8Cc1** 41 | 42 | # RU 43 | 44 | # 📌 Установка и запуск 45 | 46 | * 1 путь 47 | * git clone https://github.com/un1cum/free-proxies-and-useragents 48 | * cd free-proxies-and-useragents 49 | * start.py 50 | * 2 путь 51 | * pip3 install free_proxies_useragents 52 | * freeprx 53 | 54 | * Необходимые библиотеки pip (pip install имя библиотеки) 55 | * lxml 56 | * beautifulsoup4 57 | * bs4 58 | * progressbar 59 | * colorama 60 | 61 | * Проверить установленные библиотеки pip 62 | * pip list 63 | 64 | # 📌 Проблемы и их решения 65 | 66 | Если у вас похожая ошибка: 67 | 68 | ![wtf4](https://i.ibb.co/XWNtL0S/Screenshot-1.png "no module named") 69 | 70 | Это означает, что у вас отсутствует нужная библиотека pip, в этом случае: "_ctypes". Откройте терминал, cmd или что там у вас и пишите: 71 | 72 | * pip install имя отсутствующей библиотеки (пример: pip install _ctypes) 73 | 74 | # 📌 Автору на кофе 75 | 76 | * **Smart chain: 0x96a0B6E4274771D5f3F8e59564b58C35D74D8Cc1** 77 | * **Bitcoin: bc1qxfvstf99kyuc5x5uugxtsh3m6w3a73ruzfav7e** 78 | * **Ethereum: 0x96a0B6E4274771D5f3F8e59564b58C35D74D8Cc1** 79 | -------------------------------------------------------------------------------- /start.py: -------------------------------------------------------------------------------- 1 | """ 2 | ╔═════════════════════════════════════════════════════════════════════════════════╗ 3 | ║ ║ 4 | ║ Free proxies and user agents ║ 5 | ║ Author: ║ 6 | ║ https://github.com/un1ucm ║ 7 | ║ ║ 8 | ║ The author of this program are not responsible for its use! ║ 9 | ║ When placing this code on third-party resources, please indicate the author! ║ 10 | ║ ║ 11 | ║ All rights reserved. ║ 12 | ║ Copyright (C) 2025 un1ucm ║ 13 | ║ ║ 14 | ╚═════════════════════════════════════════════════════════════════════════════════╝ 15 | """ 16 | 17 | import os 18 | import re 19 | import bs4 20 | import sys 21 | import time 22 | import json 23 | import urllib 24 | import socket 25 | import ctypes 26 | import requests 27 | import colorama 28 | import numpy as np 29 | import pandas as pd 30 | from sys import platform 31 | from bs4 import BeautifulSoup 32 | import matplotlib.pyplot as plt 33 | from unicodedata import normalize 34 | from urllib.request import urlopen as uReq 35 | from colorama import Fore, Back, Style, init 36 | 37 | colorama.init() 38 | 39 | if platform == 'win32': 40 | os.system("cls") 41 | 42 | else: 43 | os.system("clear") 44 | 45 | 46 | def ex(): 47 | param=input(Fore.WHITE + '\nExit? yes/no: ') 48 | if param == 'yes': 49 | if platform == 'win32': 50 | os.system("cls") 51 | 52 | else: 53 | os.system("clear") 54 | print( 55 | ' I would be grateful if you star on this repository on GitHub:', 56 | '\n https://github.com/un1ucm/free-proxies-and-useragents', 57 | '\n', 58 | '\n Copyright (C) 2022 ebankoff') 59 | print("\nPress Enter to exit") 60 | input() 61 | os.abort() 62 | elif param == 'no': 63 | if platform == 'win32': 64 | os.system("cls") 65 | else: 66 | os.system("clear") 67 | main() 68 | 69 | else: 70 | print(Fore.RED + '\n━━━━━━━━━━ERROR━━━━━━━━━━\n') 71 | ex() 72 | 73 | 74 | def validate_ip(ip): 75 | a = ip.split('.') 76 | if len(a) != 4: 77 | return False 78 | for x in a: 79 | if not x.isdigit(): 80 | return False 81 | i = int(x) 82 | if i < 0 or i > 255: 83 | return False 84 | return True 85 | 86 | 87 | def validate_port(port): 88 | try: 89 | if int(port)>=1 and int(port)<=65535: 90 | return True 91 | else: 92 | return False 93 | except: 94 | return False 95 | 96 | 97 | def main(): 98 | res = requests.get('https://free-proxy-list.net/', headers={'User-Agent':'Mozilla/5.0'}) 99 | soup = BeautifulSoup(res.text,"lxml") 100 | 101 | cnt=0 102 | ip=16 103 | port=6 104 | ct=20 105 | 106 | print(Fore.RED + '█▀▀ █▀█ █▀▀ █▀▀ █▀█ █▀█ █▀█ ▀▄▀ █ █▀▀ █▀ ▄▀█ █▄ █ █▀▄ █ █ █▀ █▀▀ █▀█ ▄▀█ █▀▀ █▀▀ █▄ █ ▀█▀ █▀', 107 | Fore.WHITE + '\n█▀ █▀▄ ██▄ ██▄ █▀▀ █▀▄ █▄█ █ █ █ ██▄ ▄█ █▀█ █ ▀█ █▄▀ █▄█ ▄█ ██▄ █▀▄ █▀█ █▄█ ██▄ █ ▀█ █ ▄█\n') 108 | 109 | print(Fore.RED + "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━") 110 | print(Fore.WHITE + " Created by un1ucm - https://github.com/un1ucm") 111 | print(Fore.WHITE + " There could have been your ad here") 112 | print(Fore.RED + "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━") 113 | 114 | print( 115 | Fore.RED + '\n[' + Fore.WHITE + '0' + Fore.RED + ']' + Fore.WHITE + ' Exit', 116 | Fore.RED + '\n[' + Fore.WHITE + '1' + Fore.RED + ']' + Fore.WHITE + ' Search proxies', 117 | Fore.RED + '\n[' + Fore.WHITE + '2' + Fore.RED + ']' + Fore.WHITE + ' Search user agents', 118 | Fore.RED + '\n[' + Fore.WHITE + '3' + Fore.RED + ']' + Fore.WHITE + ' Print saved proxies', 119 | Fore.RED + '\n[' + Fore.WHITE + '4' + Fore.RED + ']' + Fore.WHITE + ' Print saved user agents', 120 | Fore.RED + '\n[' + Fore.WHITE + '5' + Fore.RED + ']' + Fore.WHITE + ' Delete saved proxies', 121 | Fore.RED + '\n[' + Fore.WHITE + '6' + Fore.RED + ']' + Fore.WHITE + ' Delete saved user agents' 122 | ) 123 | try: 124 | ans = int(input('\n → ')) 125 | if ans == 0: 126 | ex() 127 | 128 | elif ans== 1: 129 | res = requests.get('https://hidemy.name/ru/proxy-list', headers={'User-Agent':'Mozilla/5.0 (Linux; Android 11; SM-A326B Build/RP1A.200720.012) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/95.0.4638.74 Mobile Safari/537.36'}) 130 | soup = BeautifulSoup(res.text,"lxml") 131 | 132 | with open(r"proxies.txt", "a", encoding="utf-8") as file: 133 | for child in soup.recursiveChildGenerator(): 134 | if child.name=='td': 135 | if validate_ip(child.text): 136 | file.write(child.text) 137 | file.write(':') 138 | if validate_port(child.text): 139 | file.write(child.text) 140 | file.write('\n') 141 | 142 | res2 = requests.get('https://free-proxy-list.net', headers={'User-Agent':'Mozilla/5.0 (Linux; Android 11; SM-A326B Build/RP1A.200720.012) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/95.0.4638.74 Mobile Safari/537.36'}) 143 | soup2 = BeautifulSoup(res2.text,"lxml") 144 | 145 | cnt2=0 146 | 147 | with open(r"proxies.txt", "a", encoding="utf-8") as file: 148 | for child in soup2.recursiveChildGenerator(): 149 | if child.name=='td': 150 | if cnt2 == 0: 151 | if not validate_ip(child.text): 152 | break 153 | file.write(child.text) 154 | file.write(':') 155 | if cnt2 == 1: 156 | file.write(child.text) 157 | file.write('\n') 158 | 159 | cnt2 = (cnt2 + 1) % 8 160 | print(Fore.WHITE + "\nSuccess! File: proxies.txt") 161 | ex() 162 | 163 | elif ans == 2: 164 | res = requests.get('https://useragents.ru/stable.html', headers={'User-Agent':'Mozilla/5.0'}) 165 | soup = BeautifulSoup(res.text,"lxml") 166 | 167 | ans = soup.find("span", {"style": "color:#000000;font-family:Arial;font-size:13px;"}) 168 | ans2=str(ans) 169 | ans3="" 170 | ans4="" 171 | 172 | for i in range(61, len(ans2)-1): 173 | if(ans2[i]!='<' and ans2[i]!='>' and ans2[i]+ans2[i+1]!='br' and ans2[i]!='r' and ans2[i]!='/'): 174 | ans3+=ans2[i] 175 | if(ans2[i]=='"' or ans2[i]+ans2[i+1]=='br'): 176 | ans3+='\n' 177 | 178 | with open(r"useragents.txt", "a") as file: 179 | file.write(ans3[:-4]) 180 | file.write('\n') 181 | 182 | print(Fore.WHITE + "\nSuccess! File: useragents.txt") 183 | ex() 184 | 185 | elif ans == 3: 186 | print("") 187 | cnt = 1 188 | with open(r"proxies.txt", "r") as file: 189 | for line in file: 190 | line = line.replace('\n', '') 191 | print(Fore.RED + '[' + Fore.WHITE + str(cnt) + Fore.RED + '] ' + Fore.WHITE + line) 192 | cnt += 1 193 | ex() 194 | 195 | elif ans == 4: 196 | print("") 197 | cnt = 1 198 | with open(r"useragents.txt", "r") as file: 199 | for line in file: 200 | line = line.replace('\n', '') 201 | print(Fore.RED + '[' + Fore.WHITE + str(cnt) + Fore.RED + '] ' + Fore.WHITE + line) 202 | cnt += 1 203 | ex() 204 | 205 | elif ans == 5: 206 | os.remove('proxies.txt') 207 | 208 | elif ans == 6: 209 | os.remove('useragents.txt') 210 | 211 | else: 212 | print(Fore.RED + '\n━━━━━━━━━━ERROR━━━━━━━━━━\n') 213 | ex() 214 | 215 | except: 216 | print(Fore.RED + '\n━━━━━━━━━━ERROR━━━━━━━━━━\n') 217 | ex() 218 | 219 | if __name__=='__main__': 220 | if platform == 'win32': 221 | ctypes.windll.kernel32.SetConsoleTitleW("free proxies and useragents") 222 | main() 223 | --------------------------------------------------------------------------------