SkillAgentSearch skills...

ApiProxy

Provide dynamic proxy capabilities for py, supporting socks, socks5, http and other formats of URL

Install / Use

/learn @test741123/ApiProxy
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

快捷使用

安装库

  • pip install ApiProxy

编译库

  • python ./setup.py sdist bdist_wheel
  • pip install .\ApiProxy-1.0-py3-none-any.whl

上传库

  • twine upload dist/*

卸载库

  • pip uninstall ApiProxy

场景1-设置dp代理,支持socks代理

from DrissionPage import ChromiumPage,ChromiumOptions

from ApiProxy import Proxy

a=Proxy(8993,8996)

data=a.setproxyIp("http://183.158.146.144:40023")

proxyurl=data["url"]

print("proxyurl:",proxyurl)

co=ChromiumOptions()

co.set_proxy(proxyurl)

page=ChromiumPage(addr_or_opts=co)

page.get("https://www.baidu.com")

input("等待输入")

场景2-使用dp动态代理切换,支持socks代理

from DrissionPage import ChromiumPage,ChromiumOptions
from ApiProxy import Proxy
a=Proxy(8993,8996)
data=a.setproxyIp("http://183.158.146.144:40023")
proxyurl=data["url"]
print("proxyurl:",proxyurl)
co=ChromiumOptions()
co.set_proxy(proxyurl)
page=ChromiumPage(addr_or_opts=co)
page.get("https://www.ip138.com")
input("第一次切换ip")
# 再次切换代理
a.switchproxyIp("http://49.87.97.136:40007")
page.get("https://www.ip138.com")
input("第二次切换ip")

打包避坑指南(二选一)

  • 使用PyInstaller的add_data参数,将dependencies依赖文件打包进去,否则无法使用proxy.py中的代码
  • 编辑打包的spec文件,将datas字段赋值如下:datas = [('dependencies','dependencies')] ,第二个dependencies填写本库的依赖文件夹路径

接下来计划

  • 重构apiproxy,使apiproxy支持代理链,sock5代理,全局上游代理,动态更换代理,以及对指定url进行切换代理
  • 支持tls随机指纹
  • 支持整个代理端的所有接口监听,比起dp原生监听不会存在多个嵌套页面接口漏的情况
View on GitHub
GitHub Stars44
CategoryCustomer
Updated2mo ago
Forks22

Languages

Python

Security Score

90/100

Audited on Feb 4, 2026

No findings