pylookyloo 1.28.1__tar.gz → 1.30.0__tar.gz

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.

Potentially problematic release.


This version of pylookyloo might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pylookyloo
3
- Version: 1.28.1
3
+ Version: 1.30.0
4
4
  Summary: Python CLI and module for Lookyloo
5
5
  License: GPL-2.0-or-later
6
6
  Author: Raphaël Vinot
@@ -24,7 +24,7 @@ Classifier: Topic :: Security
24
24
  Provides-Extra: docs
25
25
  Provides-Extra: examples
26
26
  Requires-Dist: Sphinx (>=8.2.3) ; (python_version >= "3.11") and (extra == "docs")
27
- Requires-Dist: pylacus (>=1.13.2) ; extra == "examples"
27
+ Requires-Dist: pylacus (>=1.15.0) ; extra == "examples"
28
28
  Requires-Dist: requests (>=2.32.3)
29
29
  Project-URL: Documentation, https://pylookyloo.readthedocs.io/en/latest/
30
30
  Project-URL: Repository, https://github.com/lookyloo/PyLookyloo
@@ -60,6 +60,7 @@ class CaptureSettings(TypedDict, total=False):
60
60
  device_name: str | None
61
61
  user_agent: str | None
62
62
  proxy: str | dict[str, str] | None
63
+ remote_lacus_name: str | None
63
64
  general_timeout_in_sec: int | None
64
65
  cookies: list[dict[str, Any]] | None
65
66
  storage: str | dict[str, Any] | None
@@ -128,6 +129,11 @@ class Lookyloo():
128
129
  r = self.session.get(urljoin(self.root_url, str(PurePosixPath('json', tree_uuid, 'status'))))
129
130
  return r.json()
130
131
 
132
+ def get_remote_lacuses(self) -> list[dict[str, Any]]:
133
+ '''Get the list of Lacus instances configured on the Lookyloo instance'''
134
+ r = self.session.get(urljoin(self.root_url, str(PurePosixPath('json', 'remote_lacuses'))))
135
+ return r.json()
136
+
131
137
  def get_capture_stats(self, tree_uuid: str) -> dict[str, Any]:
132
138
  '''Get statistics of the capture'''
133
139
  r = self.session.get(urljoin(self.root_url, str(PurePosixPath('json', tree_uuid, 'stats'))))
@@ -170,6 +176,7 @@ class Lookyloo():
170
176
  browser: str | None=None, device_name: str | None=None,
171
177
  user_agent: str | None=None,
172
178
  proxy: str | dict[str, str] | None=None,
179
+ remote_lacus_name: str | None=None,
173
180
  general_timeout_in_sec: int | None=None,
174
181
  cookies: list[dict[str, Any]] | None=None,
175
182
  storage: str | dict[str, Any] | None=None,
@@ -195,6 +202,7 @@ class Lookyloo():
195
202
  browser: str | None=None, device_name: str | None=None,
196
203
  user_agent: str | None=None,
197
204
  proxy: str | dict[str, str] | None=None,
205
+ remote_lacus_name: str | None=None,
198
206
  general_timeout_in_sec: int | None=None,
199
207
  cookies: list[dict[str, Any]] | None=None,
200
208
  storage: str | dict[str, Any] | None=None,
@@ -223,7 +231,8 @@ class Lookyloo():
223
231
  :param browser: The browser to use for the capture, must be something Playwright knows
224
232
  :param device_name: The name of the device, must be something Playwright knows
225
233
  :param user_agent: The user agent the browser will use for the capture
226
- :param proxy: SOCKS5 proxy to use for capturing
234
+ :param proxy: Capture via a proxy. It can either be the full URL to a SOCKS5 proxy, or the name of a specific proxy configured on a remote lacus instance.
235
+ :param remote_lacus_name: The name of the remote Lacus instance to use for the capture (only if lookyloo is configured this way)
227
236
  :param general_timeout_in_sec: The capture will raise a timeout it it takes more than that time
228
237
  :param cookies: A list of cookies
229
238
  :param headers: The headers to pass to the capture
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "pylookyloo"
3
- version = "1.28.1"
3
+ version = "1.30.0"
4
4
  description = "Python CLI and module for Lookyloo"
5
5
  authors = [
6
6
  {name="Raphaël Vinot", email="raphael.vinot@circl.lu"}
@@ -37,11 +37,11 @@ lookyloo = 'pylookyloo:main'
37
37
 
38
38
  [project.optional-dependencies]
39
39
  docs = ["Sphinx (>=8.2.3) ; python_version >= \"3.11\""]
40
- examples = ["pylacus (>=1.13.2)"]
40
+ examples = ["pylacus (>=1.15.0)"]
41
41
 
42
42
  [tool.poetry.group.dev.dependencies]
43
43
  mypy = "^1.15.0"
44
- types-requests = "^2.32.0.20250328"
44
+ types-requests = "^2.32.0.20250515"
45
45
  pytest = "^8.3.5"
46
46
 
47
47
  [build-system]
File without changes
File without changes