{"id":28300428,"url":"https://github.com/pyproxytools/pyproxy","last_synced_at":"2025-06-16T22:31:25.709Z","repository":{"id":290962953,"uuid":"943894620","full_name":"pyproxytools/pyproxy","owner":"pyproxytools","description":"Lightweight and fast python web proxy","archived":false,"fork":false,"pushed_at":"2025-06-08T20:41:49.000Z","size":1589,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-08T21:29:35.757Z","etag":null,"topics":["http-proxy","https-proxy","proxy","proxy-server","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pyproxytools.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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":"2025-03-06T12:49:27.000Z","updated_at":"2025-06-08T20:40:55.000Z","dependencies_parsed_at":"2025-06-08T21:40:01.959Z","dependency_job_id":null,"html_url":"https://github.com/pyproxytools/pyproxy","commit_stats":null,"previous_names":["6c656c65/pyproxy","pyproxytools/pyproxy"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/pyproxytools/pyproxy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyproxytools%2Fpyproxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyproxytools%2Fpyproxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyproxytools%2Fpyproxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyproxytools%2Fpyproxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pyproxytools","download_url":"https://codeload.github.com/pyproxytools/pyproxy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyproxytools%2Fpyproxy/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260251321,"owners_count":22981010,"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","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":["http-proxy","https-proxy","proxy","proxy-server","python3"],"created_at":"2025-05-23T16:22:41.146Z","updated_at":"2025-06-16T22:31:25.699Z","avatar_url":"https://github.com/pyproxytools.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003epyproxy\u003c/h1\u003e\n\u003c/div\u003e\n\n\n**pyproxy** is a lightweight, fast, and customizable Python-based web proxy server designed to handle both HTTP and HTTPS traffic efficiently. It can be used for various purposes, including web scraping, traffic monitoring, and content filtering.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/license/pyproxytools/pyproxy?style=for-the-badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/issues/pyproxytools/pyproxy?style=for-the-badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/issues-closed/pyproxytools/pyproxy?style=for-the-badge\"\u003e\n  \u003cbr\u003e\n  \u003cimg src=\"https://img.shields.io/github/forks/pyproxytools/pyproxy?style=for-the-badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/stars/pyproxytools/pyproxy?style=for-the-badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/commit-activity/w/pyproxytools/pyproxy?style=for-the-badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/contributors/pyproxytools/pyproxy?style=for-the-badge\"\u003e\n  \u003cbr\u003e\n  \u003cimg src=\"https://img.shields.io/pypi/v/pyproxytools?style=for-the-badge\"\u003e\n  \u003cimg src=\"https://img.shields.io/pypi/pyversions/pyproxytools?style=for-the-badge\"\u003e\n\u003c/p\u003e\n\n---\n\n## ⚡ **Features**\n\n| Feature                                      | Supported |\n|----------------------------------------------|-----------|\n| HTTP \u0026 HTTPS                                 | ✅        |\n| Web request logging                          | ✅        |\n| Domain \u0026 URL blacklist                       | ✅        |\n| SSL inspection                               | ✅        |\n| Custom 403 Forbidden page                    | ✅        |\n| Remote (HTTP) blacklist support              | ✅        |\n| Shortcut support                             | ✅        |\n| Disable inspection for banking websites      | ✅        |\n| Custom headers                               | ✅        |\n| Web interface monitoring                     | ✅        |\n| Lightweight Docker image                     | ✅        |\n| Proxy chaining (multi-proxy forwarding)      | ✅        |\n| IP whitelist with subnet support             | ✅        |\n\n## 📦 **Installation**\n\n### Install from package\n```bash\npip install pyproxytools\n```\n\n### Install from source\n```bash\ngit clone https://github.com/pyproxytools/pyproxy.git\ncd pyproxy\npip install -r requirements.txt\n```\n\n### Install with Docker\n```bash\ndocker pull ghcr.io/pyproxytools/pyproxy:latest\ndocker run -d ghcr.io/pyproxytools/pyproxy:latest\n```\nYou can use slim images by adding `-slim` to the end of the tags\n\n### Install with Compose\n```bash\nwget https://raw.githubusercontent.com/pyproxytools/pyproxy/main/docker-compose.yml\ndocker-compose up -d\n```\n\n## 🚀 **Usage**\n\n### Start the proxy\n```bash\npython3 -m pyproxy\n```\nThe proxy will be available at: `0.0.0.0:8080`.\nThe access log will be available at `./logs/access.log`.\n\n## 📚 **Documentation**\nIf you encounter any problems, or if you want to use the program in a particular way, I advise you to read the [documentation](https://github.com/pyproxytools/pyproxy/wiki).\n\n## 🔧 **To do**\n\n- Support content analysis\n- Caching of latest and most searched pages\n\n## 🏎️ **Benchmark**\n\nIf you're interested in benchmarking the performance of the proxy or comparing request times with and without a proxy, please refer to the [Benchmark README](benchmark/README.md) for detailed instructions on how to run the benchmarking tests and generate reports.\n\n## 📄 **License**\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🤝 **Contributing**\n\nContributions are welcome and appreciated! If you'd like to improve this project, feel free to fork the repository and submit a pull request. Whether it's fixing bugs, adding new features, improving documentation, or suggesting enhancements, every bit helps. Please make sure to follow the coding standards and test your changes before submitting. Let's build something great together!\n\n## 📦 Deployment with Ansible\n\nIf you want to deploy **pyproxy** automatically to remote servers (via source or Docker), an official [Ansible role](https://github.com/pyproxytools/pyproxy-ansible) is available:\n\n* 🔧 Install from source or run as a Docker container\n* 📁 Supports customization of ports, versions, and paths\n* 🚀 Easily integrable into your infrastructure or CI/CD pipelines\n\n👉 Check out the [pyproxy-ansible](https://github.com/pyproxytools/pyproxy-ansible) repository for more details and usage instructions.\n\n---","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyproxytools%2Fpyproxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpyproxytools%2Fpyproxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyproxytools%2Fpyproxy/lists"}