apify 1.7.3b1__tar.gz → 1.7.3b3__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 apify might be problematic. Click here for more details.
- {apify-1.7.3b1 → apify-1.7.3b3}/PKG-INFO +7 -7
- {apify-1.7.3b1 → apify-1.7.3b3}/pyproject.toml +10 -8
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/base_resource_client.py +3 -3
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_utils.py +1 -3
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/log.py +1 -1
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/proxy_configuration.py +1 -1
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify.egg-info/PKG-INFO +7 -7
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify.egg-info/requires.txt +6 -6
- {apify-1.7.3b1 → apify-1.7.3b3}/LICENSE +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/README.md +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/setup.cfg +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/__init__.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_crypto.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/__init__.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/file_storage_utils.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/memory_storage_client.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/__init__.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/base_resource_collection_client.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/dataset.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/dataset_collection.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/key_value_store.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/key_value_store_collection.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/request_queue.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/request_queue_collection.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/actor.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/config.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/consts.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/event_manager.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/py.typed +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/__init__.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/middlewares/__init__.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/middlewares/apify_proxy.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/pipelines/__init__.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/pipelines/actor_dataset_push.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/requests.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/scheduler.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/scrapy/utils.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/storages/__init__.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/storages/base_storage.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/storages/dataset.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/storages/key_value_store.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/storages/request_queue.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify/storages/storage_client_manager.py +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify.egg-info/SOURCES.txt +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify.egg-info/dependency_links.txt +0 -0
- {apify-1.7.3b1 → apify-1.7.3b3}/src/apify.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: apify
|
|
3
|
-
Version: 1.7.
|
|
3
|
+
Version: 1.7.3b3
|
|
4
4
|
Summary: Apify SDK for Python
|
|
5
5
|
Author-email: "Apify Technologies s.r.o." <support@apify.com>
|
|
6
6
|
License: Apache Software License
|
|
@@ -24,7 +24,7 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
24
24
|
Requires-Python: >=3.8
|
|
25
25
|
Description-Content-Type: text/markdown
|
|
26
26
|
License-File: LICENSE
|
|
27
|
-
Requires-Dist: apify-client~=1.
|
|
27
|
+
Requires-Dist: apify-client~=1.7.1
|
|
28
28
|
Requires-Dist: apify-shared~=1.1.2
|
|
29
29
|
Requires-Dist: aiofiles>=22.1.0
|
|
30
30
|
Requires-Dist: aioshutil>=1.0
|
|
@@ -38,7 +38,7 @@ Requires-Dist: typing-extensions>=4.1.0
|
|
|
38
38
|
Requires-Dist: websockets>=10.1
|
|
39
39
|
Provides-Extra: dev
|
|
40
40
|
Requires-Dist: build~=1.2.0; extra == "dev"
|
|
41
|
-
Requires-Dist: filelock~=3.15.
|
|
41
|
+
Requires-Dist: filelock~=3.15.0; extra == "dev"
|
|
42
42
|
Requires-Dist: mypy~=1.10.0; extra == "dev"
|
|
43
43
|
Requires-Dist: pre-commit~=3.5.0; extra == "dev"
|
|
44
44
|
Requires-Dist: pydoc-markdown~=4.8.0; extra == "dev"
|
|
@@ -49,12 +49,12 @@ Requires-Dist: pytest-only~=2.1.0; extra == "dev"
|
|
|
49
49
|
Requires-Dist: pytest-timeout~=2.3.0; extra == "dev"
|
|
50
50
|
Requires-Dist: pytest-xdist~=3.6.0; extra == "dev"
|
|
51
51
|
Requires-Dist: respx~=0.21.0; extra == "dev"
|
|
52
|
-
Requires-Dist: ruff~=0.
|
|
53
|
-
Requires-Dist: setuptools~=70.
|
|
52
|
+
Requires-Dist: ruff~=0.5.0; extra == "dev"
|
|
53
|
+
Requires-Dist: setuptools~=70.3.0; extra == "dev"
|
|
54
54
|
Requires-Dist: twine~=5.1.0; extra == "dev"
|
|
55
|
-
Requires-Dist: types-aiofiles~=
|
|
55
|
+
Requires-Dist: types-aiofiles~=24.1.0.20240626; extra == "dev"
|
|
56
56
|
Requires-Dist: types-colorama~=0.4.15.20240311; extra == "dev"
|
|
57
|
-
Requires-Dist: types-psutil~=
|
|
57
|
+
Requires-Dist: types-psutil~=6.0.0.20240621; extra == "dev"
|
|
58
58
|
Provides-Extra: scrapy
|
|
59
59
|
Requires-Dist: scrapy>=2.11.0; extra == "scrapy"
|
|
60
60
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "apify"
|
|
3
|
-
version = "1.7.
|
|
3
|
+
version = "1.7.3b3"
|
|
4
4
|
description = "Apify SDK for Python"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "Apache Software License" }
|
|
@@ -26,7 +26,7 @@ requires-python = ">=3.8"
|
|
|
26
26
|
# compatibility with a wide range of external packages. This decision was discussed in detail in the following PR:
|
|
27
27
|
# https://github.com/apify/apify-sdk-python/pull/154
|
|
28
28
|
dependencies = [
|
|
29
|
-
"apify-client ~= 1.
|
|
29
|
+
"apify-client ~= 1.7.1",
|
|
30
30
|
"apify-shared ~= 1.1.2",
|
|
31
31
|
"aiofiles >= 22.1.0",
|
|
32
32
|
"aioshutil >= 1.0",
|
|
@@ -43,7 +43,7 @@ dependencies = [
|
|
|
43
43
|
[project.optional-dependencies]
|
|
44
44
|
dev = [
|
|
45
45
|
"build ~= 1.2.0",
|
|
46
|
-
"filelock ~=3.15.
|
|
46
|
+
"filelock ~= 3.15.0",
|
|
47
47
|
"mypy ~= 1.10.0",
|
|
48
48
|
"pre-commit ~= 3.5.0",
|
|
49
49
|
"pydoc-markdown ~= 4.8.0",
|
|
@@ -54,12 +54,12 @@ dev = [
|
|
|
54
54
|
"pytest-timeout ~= 2.3.0",
|
|
55
55
|
"pytest-xdist ~= 3.6.0",
|
|
56
56
|
"respx ~= 0.21.0",
|
|
57
|
-
"ruff ~= 0.
|
|
58
|
-
"setuptools ~= 70.
|
|
57
|
+
"ruff ~= 0.5.0",
|
|
58
|
+
"setuptools ~= 70.3.0", # setuptools are used by pytest, but not explicitly required
|
|
59
59
|
"twine ~= 5.1.0",
|
|
60
|
-
"types-aiofiles ~=
|
|
60
|
+
"types-aiofiles ~= 24.1.0.20240626",
|
|
61
61
|
"types-colorama ~= 0.4.15.20240311",
|
|
62
|
-
"types-psutil ~=
|
|
62
|
+
"types-psutil ~= 6.0.0.20240621",
|
|
63
63
|
]
|
|
64
64
|
scrapy = [
|
|
65
65
|
"scrapy >= 2.11.0",
|
|
@@ -74,7 +74,7 @@ scrapy = [
|
|
|
74
74
|
"Apify Homepage" = "https://apify.com"
|
|
75
75
|
|
|
76
76
|
[build-system]
|
|
77
|
-
requires = ["setuptools ~= 70.
|
|
77
|
+
requires = ["setuptools ~= 70.3.0", "wheel"]
|
|
78
78
|
build-backend = "setuptools.build_meta"
|
|
79
79
|
|
|
80
80
|
[tool.setuptools.packages.find]
|
|
@@ -86,6 +86,8 @@ apify = ["py.typed"]
|
|
|
86
86
|
|
|
87
87
|
[tool.ruff]
|
|
88
88
|
line-length = 150
|
|
89
|
+
|
|
90
|
+
[tool.ruff.lint]
|
|
89
91
|
select = ["ALL"]
|
|
90
92
|
ignore = [
|
|
91
93
|
"ANN401", # Dynamically typed expressions (typing.Any) are disallowed in {filename}
|
{apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/base_resource_client.py
RENAMED
|
@@ -50,7 +50,7 @@ class BaseResourceClient(ABC):
|
|
|
50
50
|
@classmethod
|
|
51
51
|
@abstractmethod
|
|
52
52
|
def _get_storage_client_cache(
|
|
53
|
-
cls,
|
|
53
|
+
cls,
|
|
54
54
|
memory_storage_client: MemoryStorageClient,
|
|
55
55
|
) -> list[Self]:
|
|
56
56
|
raise NotImplementedError('You must override this method in the subclass!')
|
|
@@ -62,7 +62,7 @@ class BaseResourceClient(ABC):
|
|
|
62
62
|
@classmethod
|
|
63
63
|
@abstractmethod
|
|
64
64
|
def _create_from_directory(
|
|
65
|
-
cls,
|
|
65
|
+
cls,
|
|
66
66
|
storage_directory: str,
|
|
67
67
|
memory_storage_client: MemoryStorageClient,
|
|
68
68
|
id: str | None = None, # noqa: A002
|
|
@@ -72,7 +72,7 @@ class BaseResourceClient(ABC):
|
|
|
72
72
|
|
|
73
73
|
@classmethod
|
|
74
74
|
def _find_or_create_client_by_id_or_name(
|
|
75
|
-
cls,
|
|
75
|
+
cls,
|
|
76
76
|
memory_storage_client: MemoryStorageClient,
|
|
77
77
|
id: str | None = None, # noqa: A002
|
|
78
78
|
name: str | None = None,
|
|
@@ -208,9 +208,7 @@ def get_memory_usage_bytes() -> int:
|
|
|
208
208
|
|
|
209
209
|
|
|
210
210
|
def maybe_parse_bool(val: str | None) -> bool:
|
|
211
|
-
|
|
212
|
-
return True
|
|
213
|
-
return False
|
|
211
|
+
return val in {'true', 'True', '1'}
|
|
214
212
|
|
|
215
213
|
|
|
216
214
|
def maybe_parse_datetime(val: str) -> datetime | str:
|
|
@@ -76,7 +76,7 @@ class ActorLogFormatter(logging.Formatter):
|
|
|
76
76
|
extra_fields: dict[str, Any] = {}
|
|
77
77
|
for key, value in record.__dict__.items():
|
|
78
78
|
if key not in self.empty_record.__dict__:
|
|
79
|
-
extra_fields[key] = value
|
|
79
|
+
extra_fields[key] = value # noqa: PERF403
|
|
80
80
|
|
|
81
81
|
return extra_fields
|
|
82
82
|
|
|
@@ -325,7 +325,7 @@ class ProxyConfiguration:
|
|
|
325
325
|
proxy_status_url = f'{self._actor_config.proxy_status_url}/?format=json'
|
|
326
326
|
|
|
327
327
|
status = None
|
|
328
|
-
async with httpx.AsyncClient(proxies=await self.new_url()) as client:
|
|
328
|
+
async with httpx.AsyncClient(proxies=await self.new_url(), timeout=10) as client:
|
|
329
329
|
for _ in range(2):
|
|
330
330
|
try:
|
|
331
331
|
response = await client.get(proxy_status_url)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: apify
|
|
3
|
-
Version: 1.7.
|
|
3
|
+
Version: 1.7.3b3
|
|
4
4
|
Summary: Apify SDK for Python
|
|
5
5
|
Author-email: "Apify Technologies s.r.o." <support@apify.com>
|
|
6
6
|
License: Apache Software License
|
|
@@ -24,7 +24,7 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
24
24
|
Requires-Python: >=3.8
|
|
25
25
|
Description-Content-Type: text/markdown
|
|
26
26
|
License-File: LICENSE
|
|
27
|
-
Requires-Dist: apify-client~=1.
|
|
27
|
+
Requires-Dist: apify-client~=1.7.1
|
|
28
28
|
Requires-Dist: apify-shared~=1.1.2
|
|
29
29
|
Requires-Dist: aiofiles>=22.1.0
|
|
30
30
|
Requires-Dist: aioshutil>=1.0
|
|
@@ -38,7 +38,7 @@ Requires-Dist: typing-extensions>=4.1.0
|
|
|
38
38
|
Requires-Dist: websockets>=10.1
|
|
39
39
|
Provides-Extra: dev
|
|
40
40
|
Requires-Dist: build~=1.2.0; extra == "dev"
|
|
41
|
-
Requires-Dist: filelock~=3.15.
|
|
41
|
+
Requires-Dist: filelock~=3.15.0; extra == "dev"
|
|
42
42
|
Requires-Dist: mypy~=1.10.0; extra == "dev"
|
|
43
43
|
Requires-Dist: pre-commit~=3.5.0; extra == "dev"
|
|
44
44
|
Requires-Dist: pydoc-markdown~=4.8.0; extra == "dev"
|
|
@@ -49,12 +49,12 @@ Requires-Dist: pytest-only~=2.1.0; extra == "dev"
|
|
|
49
49
|
Requires-Dist: pytest-timeout~=2.3.0; extra == "dev"
|
|
50
50
|
Requires-Dist: pytest-xdist~=3.6.0; extra == "dev"
|
|
51
51
|
Requires-Dist: respx~=0.21.0; extra == "dev"
|
|
52
|
-
Requires-Dist: ruff~=0.
|
|
53
|
-
Requires-Dist: setuptools~=70.
|
|
52
|
+
Requires-Dist: ruff~=0.5.0; extra == "dev"
|
|
53
|
+
Requires-Dist: setuptools~=70.3.0; extra == "dev"
|
|
54
54
|
Requires-Dist: twine~=5.1.0; extra == "dev"
|
|
55
|
-
Requires-Dist: types-aiofiles~=
|
|
55
|
+
Requires-Dist: types-aiofiles~=24.1.0.20240626; extra == "dev"
|
|
56
56
|
Requires-Dist: types-colorama~=0.4.15.20240311; extra == "dev"
|
|
57
|
-
Requires-Dist: types-psutil~=
|
|
57
|
+
Requires-Dist: types-psutil~=6.0.0.20240621; extra == "dev"
|
|
58
58
|
Provides-Extra: scrapy
|
|
59
59
|
Requires-Dist: scrapy>=2.11.0; extra == "scrapy"
|
|
60
60
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
apify-client~=1.
|
|
1
|
+
apify-client~=1.7.1
|
|
2
2
|
apify-shared~=1.1.2
|
|
3
3
|
aiofiles>=22.1.0
|
|
4
4
|
aioshutil>=1.0
|
|
@@ -13,7 +13,7 @@ websockets>=10.1
|
|
|
13
13
|
|
|
14
14
|
[dev]
|
|
15
15
|
build~=1.2.0
|
|
16
|
-
filelock~=3.15.
|
|
16
|
+
filelock~=3.15.0
|
|
17
17
|
mypy~=1.10.0
|
|
18
18
|
pre-commit~=3.5.0
|
|
19
19
|
pydoc-markdown~=4.8.0
|
|
@@ -24,12 +24,12 @@ pytest-only~=2.1.0
|
|
|
24
24
|
pytest-timeout~=2.3.0
|
|
25
25
|
pytest-xdist~=3.6.0
|
|
26
26
|
respx~=0.21.0
|
|
27
|
-
ruff~=0.
|
|
28
|
-
setuptools~=70.
|
|
27
|
+
ruff~=0.5.0
|
|
28
|
+
setuptools~=70.3.0
|
|
29
29
|
twine~=5.1.0
|
|
30
|
-
types-aiofiles~=
|
|
30
|
+
types-aiofiles~=24.1.0.20240626
|
|
31
31
|
types-colorama~=0.4.15.20240311
|
|
32
|
-
types-psutil~=
|
|
32
|
+
types-psutil~=6.0.0.20240621
|
|
33
33
|
|
|
34
34
|
[scrapy]
|
|
35
35
|
scrapy>=2.11.0
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/dataset_collection.py
RENAMED
|
File without changes
|
{apify-1.7.3b1 → apify-1.7.3b3}/src/apify/_memory_storage/resource_clients/key_value_store.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|