antibrow 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- antibrow/__init__.py +131 -0
- antibrow/__main__.py +8 -0
- antibrow/browser.py +654 -0
- antibrow/cli.py +246 -0
- antibrow/config.py +100 -0
- antibrow/errors.py +42 -0
- antibrow/geoip.py +253 -0
- antibrow/kernel.py +532 -0
- antibrow/launcher.py +259 -0
- antibrow/license.py +300 -0
- antibrow/persona.py +335 -0
- antibrow/proxy.py +201 -0
- antibrow/py.typed +0 -0
- antibrow-0.1.0.dist-info/METADATA +587 -0
- antibrow-0.1.0.dist-info/RECORD +18 -0
- antibrow-0.1.0.dist-info/WHEEL +4 -0
- antibrow-0.1.0.dist-info/entry_points.txt +2 -0
- antibrow-0.1.0.dist-info/licenses/LICENSE +29 -0
antibrow/__init__.py
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"""AntiBrow - the antidetect browser your AI agent can drive.
|
|
2
|
+
|
|
3
|
+
Kernel-level fingerprint spoofing, unlimited local profiles, and the plain
|
|
4
|
+
Playwright API you already write::
|
|
5
|
+
|
|
6
|
+
from antibrow import launch
|
|
7
|
+
|
|
8
|
+
browser = launch()
|
|
9
|
+
page = browser.new_page()
|
|
10
|
+
page.goto("https://example.com")
|
|
11
|
+
browser.close()
|
|
12
|
+
|
|
13
|
+
Fingerprints are spoofed inside a custom Chromium build (C++/Blink), not with
|
|
14
|
+
JavaScript patches that anti-bot vendors flag on sight, and every signal -
|
|
15
|
+
Canvas, WebGL, WebGPU, fonts, audio, ``navigator``, screen, timezone - comes
|
|
16
|
+
from one coherent persona that is frozen per profile.
|
|
17
|
+
|
|
18
|
+
See https://antibrow.com and the project README for the full API.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
from __future__ import annotations
|
|
22
|
+
|
|
23
|
+
__version__ = "0.1.0"
|
|
24
|
+
|
|
25
|
+
from .browser import (
|
|
26
|
+
Antibrow,
|
|
27
|
+
AsyncAntibrow,
|
|
28
|
+
LaunchPlan,
|
|
29
|
+
launch,
|
|
30
|
+
launch_async,
|
|
31
|
+
launch_persistent_context,
|
|
32
|
+
launch_persistent_context_async,
|
|
33
|
+
prepare_launch,
|
|
34
|
+
)
|
|
35
|
+
from .config import (
|
|
36
|
+
config_dir,
|
|
37
|
+
default_cache_dir,
|
|
38
|
+
default_server,
|
|
39
|
+
list_profiles,
|
|
40
|
+
profile_dir,
|
|
41
|
+
profiles_dir,
|
|
42
|
+
)
|
|
43
|
+
from .errors import (
|
|
44
|
+
AntibrowError,
|
|
45
|
+
ConcurrencyLimitError,
|
|
46
|
+
KernelDownloadError,
|
|
47
|
+
LaunchError,
|
|
48
|
+
LicenseError,
|
|
49
|
+
ProxyError,
|
|
50
|
+
UnsupportedPlatformError,
|
|
51
|
+
)
|
|
52
|
+
from .geoip import ProxyGeo, lookup_proxy_geo
|
|
53
|
+
from .kernel import (
|
|
54
|
+
KERNEL_MANIFEST_URL,
|
|
55
|
+
KERNEL_VERSIONS,
|
|
56
|
+
KernelUpdateStatus,
|
|
57
|
+
KernelVersion,
|
|
58
|
+
current_platform,
|
|
59
|
+
default_kernel_version,
|
|
60
|
+
delete_kernel,
|
|
61
|
+
ensure_kernel,
|
|
62
|
+
find_kernel_version,
|
|
63
|
+
installed_kernel_updates,
|
|
64
|
+
is_kernel_installed,
|
|
65
|
+
kernel_dir,
|
|
66
|
+
kernel_dir_size,
|
|
67
|
+
kernels_for_platform,
|
|
68
|
+
list_installed_kernels,
|
|
69
|
+
refresh_kernel_catalogue,
|
|
70
|
+
)
|
|
71
|
+
from .license import LicenseInfo, fetch_license_token, get_license_token
|
|
72
|
+
from .persona import Persona, generate_persona, load_or_generate_persona, persona_to_fp_config
|
|
73
|
+
from .proxy import ProxySpec, parse_proxy
|
|
74
|
+
|
|
75
|
+
__all__ = [
|
|
76
|
+
"__version__",
|
|
77
|
+
# launching
|
|
78
|
+
"launch",
|
|
79
|
+
"launch_async",
|
|
80
|
+
"launch_persistent_context",
|
|
81
|
+
"launch_persistent_context_async",
|
|
82
|
+
"prepare_launch",
|
|
83
|
+
"Antibrow",
|
|
84
|
+
"AsyncAntibrow",
|
|
85
|
+
"LaunchPlan",
|
|
86
|
+
# kernels
|
|
87
|
+
"KERNEL_VERSIONS",
|
|
88
|
+
"KERNEL_MANIFEST_URL",
|
|
89
|
+
"KernelVersion",
|
|
90
|
+
"KernelUpdateStatus",
|
|
91
|
+
"current_platform",
|
|
92
|
+
"default_kernel_version",
|
|
93
|
+
"find_kernel_version",
|
|
94
|
+
"kernels_for_platform",
|
|
95
|
+
"ensure_kernel",
|
|
96
|
+
"is_kernel_installed",
|
|
97
|
+
"list_installed_kernels",
|
|
98
|
+
"installed_kernel_updates",
|
|
99
|
+
"refresh_kernel_catalogue",
|
|
100
|
+
"kernel_dir",
|
|
101
|
+
"kernel_dir_size",
|
|
102
|
+
"delete_kernel",
|
|
103
|
+
# profiles and identity
|
|
104
|
+
"Persona",
|
|
105
|
+
"generate_persona",
|
|
106
|
+
"load_or_generate_persona",
|
|
107
|
+
"persona_to_fp_config",
|
|
108
|
+
"list_profiles",
|
|
109
|
+
"profile_dir",
|
|
110
|
+
"profiles_dir",
|
|
111
|
+
"default_cache_dir",
|
|
112
|
+
"config_dir",
|
|
113
|
+
"default_server",
|
|
114
|
+
# proxies and geo
|
|
115
|
+
"ProxySpec",
|
|
116
|
+
"parse_proxy",
|
|
117
|
+
"ProxyGeo",
|
|
118
|
+
"lookup_proxy_geo",
|
|
119
|
+
# licensing
|
|
120
|
+
"LicenseInfo",
|
|
121
|
+
"get_license_token",
|
|
122
|
+
"fetch_license_token",
|
|
123
|
+
# errors
|
|
124
|
+
"AntibrowError",
|
|
125
|
+
"LaunchError",
|
|
126
|
+
"LicenseError",
|
|
127
|
+
"ConcurrencyLimitError",
|
|
128
|
+
"KernelDownloadError",
|
|
129
|
+
"ProxyError",
|
|
130
|
+
"UnsupportedPlatformError",
|
|
131
|
+
]
|