{"id":21835296,"url":"https://github.com/dhi13man/auto_proxy_wifi","last_synced_at":"2025-10-14T07:15:27.470Z","repository":{"id":147488120,"uuid":"430575963","full_name":"Dhi13man/auto_proxy_wifi","owner":"Dhi13man","description":"Python Automation Script for Windows devices to automatically configure a proxy server on a wifi network, based on the network's SSID. Works using Windows environment variables, registry and CLI tools (Netsh).","archived":false,"fork":false,"pushed_at":"2022-02-25T13:43:00.000Z","size":244,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-14T08:56:42.478Z","etag":null,"topics":["automation","cli","events","netsh","proxy","python","registry","task-scheduler","wifi","windows"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dhi13man.png","metadata":{"files":{"readme":"README.MD","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.MD","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-11-22T05:34:27.000Z","updated_at":"2025-03-04T13:20:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"9ad9388c-02c2-4b42-8b7f-1df1997bf711","html_url":"https://github.com/Dhi13man/auto_proxy_wifi","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Dhi13man/auto_proxy_wifi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fauto_proxy_wifi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fauto_proxy_wifi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fauto_proxy_wifi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fauto_proxy_wifi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dhi13man","download_url":"https://codeload.github.com/Dhi13man/auto_proxy_wifi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fauto_proxy_wifi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018218,"owners_count":26086303,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","cli","events","netsh","proxy","python","registry","task-scheduler","wifi","windows"],"created_at":"2024-11-27T20:19:28.438Z","updated_at":"2025-10-14T07:15:27.465Z","avatar_url":"https://github.com/Dhi13man.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# auto_proxy_wifi\n\nPython Automation Script for Windows devices to automatically configure a proxy server on a wifi network based on the network's SSID. Works using Windows environment variables, registry and CLI tools (Netsh).\n\nUtilizes Windows `schtasks` CLI tool for automatic event scheduling on Wi-Fi network change.\n\n## Set-Up and Usage\n\n- To set Proxy rules (which Proxy should be used for which Wi-Fi SSID) just modify the respective `main.py` or `main_loop.py` file and add the rule to `proxy_rules` as shown in the example rule. Wi-Fi names in Proxy Rules are case-insensitive.\n\n  Syntax for each ProxyRule: `ProxyRule(wifi_ssid: string, proxy_address: string, proxy_type: string (optional))`.\n\n   ```python\n      proxy_rules: list = [\n          ProxyRule(\"wifi1\", \"http://proxy1:port1\", \"https\"), # If Wi-Fi connected is wifi1, proxy should be http://proxy1:port1\n          ProxyRule(\"wifi2\", \"proxy2:port2\", \"socks5\"),\n          ProxyRule(\"wifi3\", \"\"), # If Wi-Fi connected is wifi3, there will be no proxy.\n      ]\n   ```\n\n- There are two potential ways to use this script:\n\n  1. **Using Python Script `./src/main_loop.py` (More Memory-Intensive)**\n\n     - Just execute `./src/main_loop.py` with Python and watch the magic happen every time you switch Wi-Fi networks. :)\n\n  2. **Using Windows Scheduled Task Triggering with `./src/main.py` (Less Memory-Intensive)**\n\n     - Open any terminal and CD into src folder `cd \u003cpath_to_repo\u003e/src`.\n     - Run `python3 ./setup.py` once and everything will be set up. :)\n\n| ![Setup Complete](screenshots/setup_complete.png) |\n| --- |\n\n| ![Example Usage](screenshots/change.png) |\n| --- |\n\n## Removal\n\n- To Disable the script, just run `./src/disable.bat` and the scheduled event will be disabled.\n- To Uninstall, remove this auto_proxy_wifi folder with all its contents.\n\n| ![Disabling the Script](screenshots/disable.png) |\n| --- |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhi13man%2Fauto_proxy_wifi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdhi13man%2Fauto_proxy_wifi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhi13man%2Fauto_proxy_wifi/lists"}