scraper2-hj3415 2.1.1__tar.gz → 2.2.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.
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/PKG-INFO +2 -1
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/pyproject.toml +2 -1
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/c101_memory_sink.py +9 -3
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/c103_memory_sink.py +9 -3
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/c104_memory_sink.py +9 -3
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/c106_memory_sink.py +9 -3
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/c108_memory_sink.py +9 -3
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/ingest_port.py +6 -5
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/LICENSE +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/README.md +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/.DS_Store +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/.DS_Store +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/playwright/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/playwright/browser.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/playwright/browser_factory.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/playwright/session.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/.DS_Store +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/store.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/mongo/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/mongo/c101_mongo_sink.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/mongo/c103_mongo_sink.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/mongo/c104_mongo_sink.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/mongo/c106_mongo_sink.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/mongo/c108_mongo_sink.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/composition.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/_converters.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/_normalize.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/c101_parser.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/c103_parser.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/c104_parser.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/c106_parser.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/parsing/c108_parser.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/browser/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/browser/browser_factory_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/browser/browser_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/base_sink_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c101_sink_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c103_sink_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c104_sink_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c106_sink_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c108_sink_port.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c101.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c103.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c104.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c106.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c108.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/__init__.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c101.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c103.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c104.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c106.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c108.py +0 -0
- {scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/main.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: scraper2-hj3415
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: Naver WiseReport scraper
|
|
5
5
|
Keywords: example,demo
|
|
6
6
|
Author-email: Hyungjin Kim <hj3415@gmail.com>
|
|
@@ -16,6 +16,7 @@ Requires-Dist: pandas-stubs>=2.3.3
|
|
|
16
16
|
Requires-Dist: lxml>=6.0.2
|
|
17
17
|
Requires-Dist: typer>=0.21.0
|
|
18
18
|
Requires-Dist: db2-hj3415
|
|
19
|
+
Requires-Dist: contracts-hj3415
|
|
19
20
|
|
|
20
21
|
# scraper2
|
|
21
22
|
|
|
@@ -4,7 +4,7 @@ build-backend = "flit_core.buildapi"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "scraper2-hj3415" # PyPI 이름 (하이픈 허용)
|
|
7
|
-
version = "2.
|
|
7
|
+
version = "2.2.0"
|
|
8
8
|
description = "Naver WiseReport scraper"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -24,6 +24,7 @@ dependencies = [
|
|
|
24
24
|
"lxml>=6.0.2",
|
|
25
25
|
"typer>=0.21.0",
|
|
26
26
|
"db2-hj3415",
|
|
27
|
+
"contracts-hj3415",
|
|
27
28
|
]
|
|
28
29
|
|
|
29
30
|
[tool.flit.module]
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#scraper2/adapters/out/sinks/memory/c101_memory_sink.py
|
|
2
2
|
from __future__ import annotations
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing import Iterable, Optional
|
|
5
6
|
|
|
6
7
|
from contracts.nfs.c101 import C101DTO
|
|
7
8
|
from scraper2.adapters.out.sinks.memory.store import InMemoryStore
|
|
@@ -13,8 +14,13 @@ class MemoryC101Sink(C101SinkPort):
|
|
|
13
14
|
def __init__(self, store: InMemoryStore[C101DTO]):
|
|
14
15
|
self._store = store
|
|
15
16
|
|
|
16
|
-
async def write(self, dto: C101DTO) -> None:
|
|
17
|
+
async def write(self, dto: C101DTO, *, asof: Optional[datetime] = None) -> None:
|
|
17
18
|
await self._store.put(_ENDPOINT, dto.코드, dto)
|
|
18
19
|
|
|
19
|
-
async def write_many(
|
|
20
|
+
async def write_many(
|
|
21
|
+
self,
|
|
22
|
+
dtos: Iterable[C101DTO],
|
|
23
|
+
*,
|
|
24
|
+
asof: Optional[datetime] = None,
|
|
25
|
+
) -> None:
|
|
20
26
|
await self._store.put_many(_ENDPOINT, ((d.코드, d) for d in dtos))
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
# scraper2/adapters/out/sinks/memory/c103_memory_sink.py
|
|
2
2
|
from __future__ import annotations
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing import Iterable, Optional
|
|
5
6
|
|
|
6
7
|
from contracts.nfs.c103 import C103DTO
|
|
7
8
|
from scraper2.adapters.out.sinks.memory.store import InMemoryStore
|
|
@@ -13,8 +14,13 @@ class MemoryC103Sink(C103SinkPort):
|
|
|
13
14
|
def __init__(self, store: InMemoryStore[C103DTO]):
|
|
14
15
|
self._store = store
|
|
15
16
|
|
|
16
|
-
async def write(self, dto: C103DTO) -> None:
|
|
17
|
+
async def write(self, dto: C103DTO, *, asof: Optional[datetime] = None) -> None:
|
|
17
18
|
await self._store.put(_ENDPOINT, dto.코드, dto)
|
|
18
19
|
|
|
19
|
-
async def write_many(
|
|
20
|
+
async def write_many(
|
|
21
|
+
self,
|
|
22
|
+
dtos: Iterable[C103DTO],
|
|
23
|
+
*,
|
|
24
|
+
asof: Optional[datetime] = None,
|
|
25
|
+
) -> None:
|
|
20
26
|
await self._store.put_many(_ENDPOINT, ((d.코드, d) for d in dtos))
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
# scraper2/adapters/out/sinks/memory/c104_memory_sink.py
|
|
2
2
|
from __future__ import annotations
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing import Iterable, Optional
|
|
5
6
|
|
|
6
7
|
from contracts.nfs.c104 import C104DTO
|
|
7
8
|
from scraper2.adapters.out.sinks.memory.store import InMemoryStore
|
|
@@ -13,8 +14,13 @@ class MemoryC104Sink(C104SinkPort):
|
|
|
13
14
|
def __init__(self, store: InMemoryStore[C104DTO]):
|
|
14
15
|
self._store = store
|
|
15
16
|
|
|
16
|
-
async def write(self, dto: C104DTO) -> None:
|
|
17
|
+
async def write(self, dto: C104DTO, *, asof: Optional[datetime] = None) -> None:
|
|
17
18
|
await self._store.put(_ENDPOINT, dto.코드, dto)
|
|
18
19
|
|
|
19
|
-
async def write_many(
|
|
20
|
+
async def write_many(
|
|
21
|
+
self,
|
|
22
|
+
dtos: Iterable[C104DTO],
|
|
23
|
+
*,
|
|
24
|
+
asof: Optional[datetime] = None,
|
|
25
|
+
) -> None:
|
|
20
26
|
await self._store.put_many(_ENDPOINT, ((d.코드, d) for d in dtos))
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#scraper2/adapters/out/sinks/memory/c106_memory_sink.py
|
|
2
2
|
from __future__ import annotations
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing import Iterable, Optional
|
|
5
6
|
|
|
6
7
|
from contracts.nfs.c106 import C106DTO
|
|
7
8
|
from scraper2.adapters.out.sinks.memory.store import InMemoryStore
|
|
@@ -13,8 +14,13 @@ class MemoryC106Sink(C106SinkPort):
|
|
|
13
14
|
def __init__(self, store: InMemoryStore[C106DTO]):
|
|
14
15
|
self._store = store
|
|
15
16
|
|
|
16
|
-
async def write(self, dto: C106DTO) -> None:
|
|
17
|
+
async def write(self, dto: C106DTO, *, asof: Optional[datetime] = None) -> None:
|
|
17
18
|
await self._store.put(_ENDPOINT, dto.코드, dto)
|
|
18
19
|
|
|
19
|
-
async def write_many(
|
|
20
|
+
async def write_many(
|
|
21
|
+
self,
|
|
22
|
+
dtos: Iterable[C106DTO],
|
|
23
|
+
*,
|
|
24
|
+
asof: Optional[datetime] = None,
|
|
25
|
+
) -> None:
|
|
20
26
|
await self._store.put_many(_ENDPOINT, ((d.코드, d) for d in dtos))
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#scraper2/adapters/out/sinks/memory/c108_memory_sink.py
|
|
2
2
|
from __future__ import annotations
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing import Iterable, Optional
|
|
5
6
|
|
|
6
7
|
from contracts.nfs.c108 import C108DTO
|
|
7
8
|
from scraper2.adapters.out.sinks.memory.store import InMemoryStore
|
|
@@ -13,8 +14,13 @@ class MemoryC108Sink(C108SinkPort):
|
|
|
13
14
|
def __init__(self, store: InMemoryStore[C108DTO]):
|
|
14
15
|
self._store = store
|
|
15
16
|
|
|
16
|
-
async def write(self, dto: C108DTO) -> None:
|
|
17
|
+
async def write(self, dto: C108DTO, *, asof: Optional[datetime] = None) -> None:
|
|
17
18
|
await self._store.put(_ENDPOINT, dto.코드, dto)
|
|
18
19
|
|
|
19
|
-
async def write_many(
|
|
20
|
+
async def write_many(
|
|
21
|
+
self,
|
|
22
|
+
dtos: Iterable[C108DTO],
|
|
23
|
+
*,
|
|
24
|
+
asof: Optional[datetime] = None,
|
|
25
|
+
) -> None:
|
|
20
26
|
await self._store.put_many(_ENDPOINT, ((d.코드, d) for d in dtos))
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
# scraper2/app/ports/ingest_port.py
|
|
2
|
-
from typing import Protocol, Iterable
|
|
2
|
+
from typing import Protocol, Iterable, Optional, Sequence, Any
|
|
3
3
|
from datetime import datetime
|
|
4
4
|
|
|
5
5
|
class IngestPort(Protocol):
|
|
6
6
|
async def execute_many(
|
|
7
7
|
self,
|
|
8
|
-
codes:
|
|
8
|
+
codes: Iterable[str],
|
|
9
9
|
*,
|
|
10
10
|
sleep_sec: float = ...,
|
|
11
|
-
asof: datetime
|
|
12
|
-
) ->
|
|
13
|
-
...
|
|
11
|
+
asof: Optional[datetime] = None,
|
|
12
|
+
) -> Sequence[Any]:
|
|
13
|
+
...
|
|
14
|
+
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/playwright/__init__.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/playwright/browser.py
RENAMED
|
File without changes
|
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/playwright/session.py
RENAMED
|
File without changes
|
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/__init__.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/memory/store.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/adapters/out/sinks/mongo/__init__.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
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/browser/browser_port.py
RENAMED
|
File without changes
|
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/base_sink_port.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c101_sink_port.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c103_sink_port.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c104_sink_port.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c106_sink_port.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/ports/sinks/c108_sink_port.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c101.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c103.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c104.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c106.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/fetch/fetch_c108.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/__init__.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c101.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c103.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c104.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c106.py
RENAMED
|
File without changes
|
{scraper2_hj3415-2.1.1 → scraper2_hj3415-2.2.0}/src/scraper2/app/usecases/ingest/ingest_c108.py
RENAMED
|
File without changes
|
|
File without changes
|