- Notifications
You must be signed in to change notification settings - Fork1
zebbern/Proxy-Scraper
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation

This project is for high performance and reliability, with features like proxy validation, testing, and output customization.
Proxy Tester Settings |Proxy Tester Code |Important Considerations
Want to test proxies locally? Use the quick tester below!
- Create a file called
proxies.txt
in the same directory. - Paste your proxy list (e.g.,
IP:Port
format) into the file. - At the end you get an option to save working proxies to a file for later use.
- Run this Python script:###ImportantThe more "Workers" u have the less accurate results you get
- More workers = Faster but less working proxies - 10-100 workers
- Less workers = Slower but more working proxies - 1-10 workers
importrequestsfromconcurrent.futuresimportThreadPoolExecutorfromtimeimportsleepfromcoloramaimportFore,Style,init# Initialize coloramainit(autoreset=True)defcheck_proxy(args):index,total,proxy=argsproxy=proxy.strip()proxies= {'http':f'http://{proxy}','https':f'https://{proxy}', }try:response=requests.get('http://httpbin.org/ip',proxies=proxies,timeout=5)ifresponse.status_code==200:result=f'{Fore.GREEN}[{index}/{total}] ✅{proxy}{Style.RESET_ALL}'is_valid=Trueelse:result=f'{Fore.RED}[{index}/{total}] ❌{proxy}{Style.RESET_ALL}'is_valid=Falseexceptrequests.exceptions.RequestException:result=f'{Fore.RED}[{index}/{total}] ❌{proxy}{Style.RESET_ALL}'is_valid=Falsesleep(0.5)# Delay to prevent overloading the servicereturn (result,proxyifis_validelseNone)if__name__=='__main__':withopen('proxies.txt','r')asfile:proxies_list= [line.strip()forlineinfileifline.strip()]total_proxies=len(proxies_list)valid_proxies= []# Prepare arguments for mapargs_list= [(idx,total_proxies,proxy)foridx,proxyinenumerate(proxies_list,start=1)]# Use ThreadPoolExecutor with fewer workers to control request ratewithThreadPoolExecutor(max_workers=5)asexecutor:# Use executor.map to process proxies in orderforresult,valid_proxyinexecutor.map(check_proxy,args_list):print(result)ifvalid_proxy:valid_proxies.append(valid_proxy)# After all proxies have been checked, prompt to save valid onesifvalid_proxies:save_choice=input("Do you want to save the valid proxies to a file? (y/n): ")ifsave_choice.lower()=='y':output_file=input("Enter the filename to save valid proxies (default: valid_proxies.txt): ").strip()ifnotoutput_file:output_file='valid_proxies.txt'withopen(output_file,'w')asf:forproxyinvalid_proxies:f.write(f'{proxy}\n')print(f"Valid proxies saved to{output_file}")else:print("No valid proxies found.")
- You can save file asproxies.txt to get the new working tested proxies into the same file u put them in
Important
- Use the proxies responsibly and ethically.
- Any illegal or unethical use of this tool or its proxies is solely your responsibility.
- This is all public available proxies and has nothing to do with me this list is only for easy access to proxies.
- Public proxies may be unreliable and pose security risks.
- Avoid using them for sensitive operations or data.
- Remember that free proxies may log browsing history, so your online privacy may be compromised