mirror of
https://github.com/Melledy/Grasscutter.git
synced 2024-11-25 11:57:35 +00:00
68 lines
2.0 KiB
Python
68 lines
2.0 KiB
Python
|
##
|
||
|
#
|
||
|
# Copyright (C) 2002-2022 MlgmXyysd All Rights Reserved.
|
||
|
#
|
||
|
##
|
||
|
|
||
|
##
|
||
|
#
|
||
|
# Genshin Impact script for mitmproxy
|
||
|
#
|
||
|
# https://github.com/MlgmXyysd/
|
||
|
#
|
||
|
# *Original fiddler script from https://github.lunatic.moe/fiddlerscript
|
||
|
#
|
||
|
# Environment requirement:
|
||
|
# - mitmdump from mitmproxy
|
||
|
#
|
||
|
# @author MlgmXyysd
|
||
|
# @version 1.0
|
||
|
#
|
||
|
##
|
||
|
|
||
|
from mitmproxy import ctx, http
|
||
|
|
||
|
class MlgmXyysd_Genshin_Impact_Proxy:
|
||
|
|
||
|
def request(self, flow: http.HTTPFlow) -> None:
|
||
|
|
||
|
# This can also be replaced with another IP address.
|
||
|
REMOTE_HOST = "localhost"
|
||
|
|
||
|
LIST_DOMAINS = [
|
||
|
"api-os-takumi.mihoyo.com",
|
||
|
"hk4e-api-os-static.mihoyo.com",
|
||
|
"hk4e-sdk-os.mihoyo.com",
|
||
|
"dispatchosglobal.yuanshen.com",
|
||
|
"osusadispatch.yuanshen.com",
|
||
|
"account.mihoyo.com",
|
||
|
"log-upload-os.mihoyo.com",
|
||
|
"dispatchcntest.yuanshen.com",
|
||
|
"devlog-upload.mihoyo.com",
|
||
|
"webstatic.mihoyo.com",
|
||
|
"log-upload.mihoyo.com",
|
||
|
"hk4e-sdk.mihoyo.com",
|
||
|
"api-beta-sdk.mihoyo.com",
|
||
|
"api-beta-sdk-os.mihoyo.com",
|
||
|
"cnbeta01dispatch.yuanshen.com",
|
||
|
"dispatchcnglobal.yuanshen.com",
|
||
|
"cnbeta02dispatch.yuanshen.com",
|
||
|
"sdk-os-static.mihoyo.com",
|
||
|
"webstatic-sea.mihoyo.com",
|
||
|
"webstatic-sea.hoyoverse.com",
|
||
|
"hk4e-sdk-os-static.hoyoverse.com",
|
||
|
"sdk-os-static.hoyoverse.com",
|
||
|
"api-account-os.hoyoverse.com",
|
||
|
"hk4e-sdk-os.hoyoverse.com"
|
||
|
]
|
||
|
|
||
|
if flow.request.url.startswith("http://overseauspider.yuanshen.com:8888/log"):
|
||
|
ctx.log.info("Block overseauspider.yuanshen.com")
|
||
|
flow.response = http.HTTPResponse.make(404)
|
||
|
elif flow.request.host in LIST_DOMAINS:
|
||
|
ctx.log.info("Redirect " + flow.request.host)
|
||
|
flow.request.host = REMOTE_HOST
|
||
|
|
||
|
addons = [
|
||
|
MlgmXyysd_Genshin_Impact_Proxy()
|
||
|
]
|