Skip to main content

No project description provided

Project description

Slippers is a lightweight, zero-dependency SOCKS5 proxy that runs locally and transparently forwards traffic to an upstream SOCKS5 proxy requiring authentication. It allows clients that don't support SOCKS5 authentication (like some browsers) to use an authenticated proxy indirectly.

CLI Usage

python slippers.py "socks5://username:password@my-socks-server.net:1080"

By default, slippers listens on localhost:1080

You can now use your local unauthenticated SOCKS5 endpoint

curl --socks5-hostname "socks5://127.0.0.1:1080" https://ifconfig.io/country_code
US
python slippers.py "socks5://username:password@my-socks-server.net:1080"
22:16:12 [INFO] Listening on localhost:1080
22:16:19 [INFO] 127.0.0.1 connected
22:16:19 [INFO] my-socks-server.net:1080 connected
22:16:19 [INFO] Tunnel between 127.0.0.1:49967 -> my-socks-server.net:1080 established
22:16:19 [INFO] 127.0.0.1:49967 disconnected

Programmatic Usage

Sync

import os
import slippers
from playwright.sync_api import sync_playwright

username = os.getenv("SOCKS_USERNAME")
password = os.getenv("SOCKS_PASSWORD")


def main():
    with (
        sync_playwright() as p,
        slippers.proxy(
            f"socks5://{username}:{password}@my-socks-server.net:1080"
        ) as socks_host,
    ):
        browser = p.chromium.launch(
            headless=True,
            proxy={"server": socks_host},  # point to slippers local server
        )
        page = browser.new_page()
        page.goto("https://ifconfig.io/country_code", wait_until="domcontentloaded")
        print(page.text_content("body").strip())
        browser.close()


if __name__ == "__main__":
    main()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

slippers_proxy-0.1.0.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

slippers_proxy-0.1.0-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file slippers_proxy-0.1.0.tar.gz.

File metadata

  • Download URL: slippers_proxy-0.1.0.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.8 Darwin/24.5.0

File hashes

Hashes for slippers_proxy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 466c116055cd19dcbe59d89696982de7c288386a5690130249a85593e72ff9ab
MD5 abfb2cd2cc8c98e504714072848716c3
BLAKE2b-256 1cc42751e776b97965795716cd4b2298caf6a8fe9f45381ddd9b2c4013c34d94

See more details on using hashes here.

File details

Details for the file slippers_proxy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: slippers_proxy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.8 Darwin/24.5.0

File hashes

Hashes for slippers_proxy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd1afcdaf64dd6c2f325c8f171a8cd0cfbf9555ce31560c1d3e65d72ba821bed
MD5 c5b31cb7f73fadbb7c961b0ffb112f72
BLAKE2b-256 40a6cd0d5fe99e36f9758ca62c2982fd117e1f021da9f2969b658e1364cdc6e7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page