Wohnsitzer mit Oxylabs und MitmproxyPython

Python-Programme
Anonymous
 Wohnsitzer mit Oxylabs und Mitmproxy

Post by Anonymous »

Ich möchte mit Mitmproxy verwenden, um die Anfrage für eine bestimmte Website über einen Proxy umzuleiten. Dieses Skript setzt MITMProxy und das attendianl auf den Netzwerkfluss beim Start (Maschine ist so konfiguriert, dass sie den Proxy verwenden). . < /p>
Jede Hilfe, die dies zum Laufen bringt, wäre geschätzt. Danke! < /P>

Code: Select all

import asyncio
import base64

from environs import Env
from mitmproxy import options
from mitmproxy.http import HTTPFlow
from mitmproxy.net import server_spec
from mitmproxy.tools.console.master import ConsoleMaster
from proxy_server.constants import PROXY_SERVER_HOST, PROXY_SERVER_PORT
from proxy_server.logger import logger

env = Env()
env.read_env()

class OxylabsProxyAddon:
def __init__(self, protocol: str = "https"):
self.username = env("OXYLAB_USERNAME")
self.password = env("OXYLAB_PASSWORD")
self.host = "pr.oxylabs.io"
self.port = 7777
self.protocol = protocol

self.auth = f"customer-{self.username}:{self.password}"
self.credentials = base64.b64encode(self.auth.encode()).decode("utf8")
self.spec = server_spec.parse(
f"{self.protocol}://{self.host}:{self.port}", self.protocol
)

async def http_connect(self, flow: HTTPFlow):
if "whatismyip" not in flow.request.url.lower():
return

flow.request.headers["Proxy-Authorization"] = f"Basic {self.credentials}"
flow.metadata["upstream_proxy"] = self.spec

logger.info(f"Upstream proxy set for {flow.request.url}")

async def run_proxy():
opts = options.Options(
listen_host=PROXY_SERVER_HOST, listen_port=PROXY_SERVER_PORT, mode=["regular"]
)
master = ConsoleMaster(opts)
master.addons.add(OxylabsProxyAddon())
await master.run()

if __name__ == "__main__":
asyncio.run(run_proxy())

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post