warn-scraper 1.2.153.dev0__tar.gz → 1.2.155.dev0__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.
- {warn_scraper-1.2.153.dev0/warn_scraper.egg-info → warn_scraper-1.2.155.dev0}/PKG-INFO +1 -1
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/Pipfile +3 -1
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/Pipfile.lock +149 -162
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/pdfrodent/pdfrodent.py +10 -7
- warn_scraper-1.2.155.dev0/warn/scrapers/la.py +197 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/utils.py +1 -1
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0/warn_scraper.egg-info}/PKG-INFO +1 -1
- warn_scraper-1.2.153.dev0/warn/scrapers/la.py +0 -473
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/.devcontainer/devcontainer.json +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/.github/dependabot-disabled.yml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/.github/workflows/continuous-deployment.yml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/.github/workflows/continuous-deployment.yml.broken-tests +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/.gitignore +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/.pre-commit-config.yaml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/LICENSE +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/MANIFEST.in +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/Makefile +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/README.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/Makefile +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/R42693.pdf +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/gao-03-1003.pdf +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-actions-finished.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-actions-start.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-changelog-button.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-changelog-entered.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-draft-button.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-name-release.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-name-tag.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-publish-button.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-pypi.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-release-published.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-releases-button.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_static/releasing-tag-button.png +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/_templates/sources.md.tmpl +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/conf.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/contributing.rst +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/index.rst +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/make.bat +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/reference.rst +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/releasing.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/requirements.txt +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/al.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/az.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/ca.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/co.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/dc.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/de.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/ia.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/in.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/job_center.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/ks.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/md.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/me.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/mo.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/ny.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/ok.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/or.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/sc.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/tx.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/ut.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/va.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/vt.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/scrapers/wi.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/sources.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/docs/usage.md +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/pyproject.toml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/setup.cfg +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/setup.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/__init__.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/cassettes/test_cached_detail_pages.yaml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/cassettes/test_cached_search_results.yaml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/cassettes/test_missing_detail_page_values.yaml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/cassettes/test_no_results.yaml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/cassettes/test_paged_results.yaml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/cassettes/test_scrape_integration.yaml +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/conftest.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/fixtures/2021_page_1.html +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/fixtures/2021_page_2.html +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/test_cache.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/test_delete.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/test_job_center.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/test_job_center_cache.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/tests/test_openpyxl.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/__init__.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/cache.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/cli.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/pdfrodent/__init__.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/platforms/__init__.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/platforms/job_center/__init__.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/platforms/job_center/cache.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/platforms/job_center/site.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/platforms/job_center/urls.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/platforms/job_center/utils.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/runner.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/__init__.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ak.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/al.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/az.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ca.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/co.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ct.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/dc.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/de.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/fl.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ga.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/hi.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ia.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/id.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/il.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/in.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ks.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ky.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/md.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/me.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/mi.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/mo.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ms.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/mt.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ne.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/nj.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/nm.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ny.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/oh.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ok.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/or.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/pa.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ri.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/sc.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/sd.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/tn.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/tx.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/ut.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/va.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/vt.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/wa.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn/scrapers/wi.py +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn_scraper.egg-info/SOURCES.txt +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn_scraper.egg-info/dependency_links.txt +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn_scraper.egg-info/entry_points.txt +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn_scraper.egg-info/requires.txt +0 -0
- {warn_scraper-1.2.153.dev0 → warn_scraper-1.2.155.dev0}/warn_scraper.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: warn-scraper
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.155.dev0
|
|
4
4
|
Summary: Command-line interface for downloading WARN Act notices of qualified plant closings and mass layoffs from state government websites
|
|
5
5
|
Author-email: Big Local News <biglocalnews@stanford.edu>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -42,6 +42,7 @@ idna = "*"
|
|
|
42
42
|
|
|
43
43
|
[packages]
|
|
44
44
|
beautifulsoup4 = "*"
|
|
45
|
+
bln = "==2.3.18"
|
|
45
46
|
cffi = "*"
|
|
46
47
|
click = "*"
|
|
47
48
|
cryptography = "*"
|
|
@@ -61,8 +62,9 @@ urllib3 = "*"
|
|
|
61
62
|
webdriver-manager = "*"
|
|
62
63
|
xlrd = "*"
|
|
63
64
|
xvfbwrapper = "*"
|
|
64
|
-
|
|
65
|
+
opencv-python-headless = "*"
|
|
65
66
|
camelot-py = "==1.0.9"
|
|
67
|
+
pypdf = "*"
|
|
66
68
|
|
|
67
69
|
[requires]
|
|
68
70
|
python_version = "3.14"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_meta": {
|
|
3
3
|
"hash": {
|
|
4
|
-
"sha256": "
|
|
4
|
+
"sha256": "90f76dc3842e434791278f1cca0f7c3363bfe4b908c44663ecfb7750ffb66203"
|
|
5
5
|
},
|
|
6
6
|
"pipfile-spec": 6,
|
|
7
7
|
"requires": {
|
|
@@ -53,11 +53,11 @@
|
|
|
53
53
|
},
|
|
54
54
|
"certifi": {
|
|
55
55
|
"hashes": [
|
|
56
|
-
"sha256:
|
|
57
|
-
"sha256:
|
|
56
|
+
"sha256:024c88eeec92ca068db80f02b8b07c9cef7b9fe261d1d535abfd5abd6f6af432",
|
|
57
|
+
"sha256:2227dcbaafe0d2f59279d1762ddddc37783ed4354594f194ffc31d20f41fc3db"
|
|
58
58
|
],
|
|
59
59
|
"markers": "python_version >= '3.7'",
|
|
60
|
-
"version": "==2026.
|
|
60
|
+
"version": "==2026.6.17"
|
|
61
61
|
},
|
|
62
62
|
"cffi": {
|
|
63
63
|
"hashes": [
|
|
@@ -676,6 +676,7 @@
|
|
|
676
676
|
"sha256:a7cf08e5b191f4ebb530791acc0825a7986e0d0dee2a3c491184bd8599848a4b",
|
|
677
677
|
"sha256:eb60e36b237b1ebd40a912da5384b348df8ed534f6f644d8e0b4f103e272ba7d"
|
|
678
678
|
],
|
|
679
|
+
"index": "pypi",
|
|
679
680
|
"markers": "python_version >= '3.6'",
|
|
680
681
|
"version": "==4.13.0.92"
|
|
681
682
|
},
|
|
@@ -760,20 +761,20 @@
|
|
|
760
761
|
},
|
|
761
762
|
"pdfminer-six": {
|
|
762
763
|
"hashes": [
|
|
763
|
-
"sha256:
|
|
764
|
-
"sha256:
|
|
764
|
+
"sha256:366585ba97e80dffa8f00cebe303d2f381884d8637af4ce422f1df3ef38111a9",
|
|
765
|
+
"sha256:96bfd431e3577a55a0efd25676968ca4ce8fd5b53f14565f85716ff363889602"
|
|
765
766
|
],
|
|
766
767
|
"markers": "python_version >= '3.10'",
|
|
767
|
-
"version": "==
|
|
768
|
+
"version": "==20260107"
|
|
768
769
|
},
|
|
769
770
|
"pdfplumber": {
|
|
770
771
|
"hashes": [
|
|
771
|
-
"sha256:
|
|
772
|
-
"sha256:
|
|
772
|
+
"sha256:7741ea81bf165b474b153e6789d10d18e06b6ddcf3ec84289c3ef2fed6802580",
|
|
773
|
+
"sha256:b95b2d28c66efb0a794a83b88c6c6aea5987532a445d20a1cbcfa657022e6e57"
|
|
773
774
|
],
|
|
774
775
|
"index": "pypi",
|
|
775
776
|
"markers": "python_version >= '3.8'",
|
|
776
|
-
"version": "==0.11.
|
|
777
|
+
"version": "==0.11.10"
|
|
777
778
|
},
|
|
778
779
|
"pillow": {
|
|
779
780
|
"hashes": [
|
|
@@ -894,36 +895,37 @@
|
|
|
894
895
|
"sha256:30f67a614d558e495e1fbb157ba58c1de91ffc1718f5e0dfeb82a029233890a1",
|
|
895
896
|
"sha256:be10a4c54202f46d9daceaa8788be07aa8cd5ea8c25c529c50dd509206382c35"
|
|
896
897
|
],
|
|
898
|
+
"index": "pypi",
|
|
897
899
|
"markers": "python_version >= '3.8'",
|
|
898
900
|
"version": "==5.9.0"
|
|
899
901
|
},
|
|
900
902
|
"pypdfium2": {
|
|
901
903
|
"hashes": [
|
|
902
|
-
"sha256:
|
|
903
|
-
"sha256:
|
|
904
|
-
"sha256:
|
|
905
|
-
"sha256:
|
|
906
|
-
"sha256:
|
|
907
|
-
"sha256:
|
|
908
|
-
"sha256:
|
|
909
|
-
"sha256:
|
|
910
|
-
"sha256:
|
|
911
|
-
"sha256:
|
|
912
|
-
"sha256:
|
|
913
|
-
"sha256:
|
|
914
|
-
"sha256:
|
|
915
|
-
"sha256:
|
|
916
|
-
"sha256:
|
|
917
|
-
"sha256:
|
|
918
|
-
"sha256:
|
|
919
|
-
"sha256:
|
|
920
|
-
"sha256:
|
|
921
|
-
"sha256:
|
|
922
|
-
"sha256:
|
|
923
|
-
"sha256:
|
|
904
|
+
"sha256:09fda0609dc4749c9865a0315c447d6f2583a580693bcabd69980d3fbb22ad51",
|
|
905
|
+
"sha256:0de53d2710ca9509fc2812340acc57c3f043697609068592d87de654f8cabf44",
|
|
906
|
+
"sha256:10a26ce04795f8ec079e81c707fcb5737061e8a78025babc3d6e36642e9c903a",
|
|
907
|
+
"sha256:139a6387a3a2652f288e53164268bb03af4fa221d78484ee18407053a60082a3",
|
|
908
|
+
"sha256:13abf7a9f5e0ddebc8bbcccea5f13ae5abe8a298ea219e125b0fc24c1d2171b4",
|
|
909
|
+
"sha256:172ff3e10358d66456e27fb0b8b5098e28ec24e51072eb4b5b86077d550e21bb",
|
|
910
|
+
"sha256:3ba127750bc3f4161461538d532d74491cd976f584f1753a6cee9cb821338ec1",
|
|
911
|
+
"sha256:58da5b51fb7884c7d21a05062ab13edb011d1a08dfd9694f3d5d685df62796b9",
|
|
912
|
+
"sha256:610e14c37d2090b826dccc0604fc7e7612c0ce591190780ae228abdb9abb971e",
|
|
913
|
+
"sha256:6b01adcfe9aaf7a635a59bed5687fd4fd7b0da292664f050d4ebd2bfa5c70584",
|
|
914
|
+
"sha256:80f30517ee089dfbbc6e9de6da365b6e8c0ce8f80c40b7d4025a3b1d3bbd8a70",
|
|
915
|
+
"sha256:8702bb4f01ddfc8e7757b41b4c2c8392ac17c9f0234476e1e69672ea7c6d6aa0",
|
|
916
|
+
"sha256:8947fa3cd808da33960bdf8ff9e5247aa94ccd94f0b09bb3402e99498d83bcc9",
|
|
917
|
+
"sha256:a0dc52b56631e2f7edcdb22bae3b155aa840bec32c5bd05781e90baaecee88e7",
|
|
918
|
+
"sha256:ad5f5de15febb788c6eb3853e58aceda9cd8c5187c92472abaeecf9558deb0cf",
|
|
919
|
+
"sha256:be6d2a8d1bcfd777188e7aa55a25c83f34d54e8350ad8810fb32017787d9b0d9",
|
|
920
|
+
"sha256:cf4d2527f79f31c550490cc74c9f32e19385a944630a3ef4cd4d9b6f961fbf77",
|
|
921
|
+
"sha256:d04f2050b6b32bb18624688b600543342a4ab3aacf64bf66521a5af72bbc7de1",
|
|
922
|
+
"sha256:e3301c2f7a66fb8cb57dba857d0c9e90215e178f6602a87c5a306cd98513dab8",
|
|
923
|
+
"sha256:ebb9e63f92d15fc41b359fe7a187233dfae37548800e1fa09cb2fc466ac89951",
|
|
924
|
+
"sha256:f257d2011eb43c846b7e9f5a802e28646b29732763e4a35dd6ca76f9be580538",
|
|
925
|
+
"sha256:f2803020952afa57e1e148adc19369b835154e1fa251a1ca85008ab6466a710f"
|
|
924
926
|
],
|
|
925
927
|
"markers": "python_version >= '3.6'",
|
|
926
|
-
"version": "==5.
|
|
928
|
+
"version": "==5.10.1"
|
|
927
929
|
},
|
|
928
930
|
"pyquery": {
|
|
929
931
|
"hashes": [
|
|
@@ -977,12 +979,12 @@
|
|
|
977
979
|
},
|
|
978
980
|
"selenium": {
|
|
979
981
|
"hashes": [
|
|
980
|
-
"sha256:
|
|
981
|
-
"sha256:
|
|
982
|
+
"sha256:1fd9d0dc08192b2f8100e264ed720f83b05d2dd3a7feff673df04e0c7580df4b",
|
|
983
|
+
"sha256:563f0c4102f112df1cda30d46ce6d177b2e4a7a3d4b0756902d5dc84d3a8a365"
|
|
982
984
|
],
|
|
983
985
|
"index": "pypi",
|
|
984
986
|
"markers": "python_version >= '3.10'",
|
|
985
|
-
"version": "==4.
|
|
987
|
+
"version": "==4.45.0"
|
|
986
988
|
},
|
|
987
989
|
"six": {
|
|
988
990
|
"hashes": [
|
|
@@ -1193,11 +1195,11 @@
|
|
|
1193
1195
|
},
|
|
1194
1196
|
"anyio": {
|
|
1195
1197
|
"hashes": [
|
|
1196
|
-
"sha256:
|
|
1197
|
-
"sha256:
|
|
1198
|
+
"sha256:b47c1f9ccf73e67021df785332508f99379c68fa7d0684e8e3492cb1d4b23f89",
|
|
1199
|
+
"sha256:dd9b7a2a9799ed6552fde617b2c5df02b7fdd7d88392fc48101e51bae46164d9"
|
|
1198
1200
|
],
|
|
1199
1201
|
"markers": "python_version >= '3.10'",
|
|
1200
|
-
"version": "==4.
|
|
1202
|
+
"version": "==4.14.0"
|
|
1201
1203
|
},
|
|
1202
1204
|
"ast-serialize": {
|
|
1203
1205
|
"hashes": [
|
|
@@ -1290,11 +1292,11 @@
|
|
|
1290
1292
|
},
|
|
1291
1293
|
"certifi": {
|
|
1292
1294
|
"hashes": [
|
|
1293
|
-
"sha256:
|
|
1294
|
-
"sha256:
|
|
1295
|
+
"sha256:024c88eeec92ca068db80f02b8b07c9cef7b9fe261d1d535abfd5abd6f6af432",
|
|
1296
|
+
"sha256:2227dcbaafe0d2f59279d1762ddddc37783ed4354594f194ffc31d20f41fc3db"
|
|
1295
1297
|
],
|
|
1296
1298
|
"markers": "python_version >= '3.7'",
|
|
1297
|
-
"version": "==2026.
|
|
1299
|
+
"version": "==2026.6.17"
|
|
1298
1300
|
},
|
|
1299
1301
|
"cffi": {
|
|
1300
1302
|
"hashes": [
|
|
@@ -1552,116 +1554,101 @@
|
|
|
1552
1554
|
"toml"
|
|
1553
1555
|
],
|
|
1554
1556
|
"hashes": [
|
|
1555
|
-
"sha256:
|
|
1556
|
-
"sha256:
|
|
1557
|
-
"sha256:
|
|
1558
|
-
"sha256:
|
|
1559
|
-
"sha256:
|
|
1560
|
-
"sha256:
|
|
1561
|
-
"sha256:
|
|
1562
|
-
"sha256:
|
|
1563
|
-
"sha256:
|
|
1564
|
-
"sha256:
|
|
1565
|
-
"sha256:
|
|
1566
|
-
"sha256:
|
|
1567
|
-
"sha256:
|
|
1568
|
-
"sha256:
|
|
1569
|
-
"sha256:
|
|
1570
|
-
"sha256:
|
|
1571
|
-
"sha256:
|
|
1572
|
-
"sha256:
|
|
1573
|
-
"sha256:
|
|
1574
|
-
"sha256:
|
|
1575
|
-
"sha256:
|
|
1576
|
-
"sha256:
|
|
1577
|
-
"sha256:
|
|
1578
|
-
"sha256:
|
|
1579
|
-
"sha256:
|
|
1580
|
-
"sha256:
|
|
1581
|
-
"sha256:
|
|
1582
|
-
"sha256:
|
|
1583
|
-
"sha256:
|
|
1584
|
-
"sha256:
|
|
1585
|
-
"sha256:
|
|
1586
|
-
"sha256:
|
|
1587
|
-
"sha256:
|
|
1588
|
-
"sha256:
|
|
1589
|
-
"sha256:
|
|
1590
|
-
"sha256:
|
|
1591
|
-
"sha256:
|
|
1592
|
-
"sha256:
|
|
1593
|
-
"sha256:
|
|
1594
|
-
"sha256:
|
|
1595
|
-
"sha256:
|
|
1596
|
-
"sha256:
|
|
1597
|
-
"sha256:
|
|
1598
|
-
"sha256:
|
|
1599
|
-
"sha256:
|
|
1600
|
-
"sha256:
|
|
1601
|
-
"sha256:
|
|
1602
|
-
"sha256:
|
|
1603
|
-
"sha256:
|
|
1604
|
-
"sha256:
|
|
1605
|
-
"sha256:
|
|
1606
|
-
"sha256:
|
|
1607
|
-
"sha256:
|
|
1608
|
-
"sha256:
|
|
1609
|
-
"sha256:
|
|
1610
|
-
"sha256:
|
|
1611
|
-
"sha256:
|
|
1612
|
-
"sha256:
|
|
1613
|
-
"sha256:
|
|
1614
|
-
"sha256:
|
|
1615
|
-
"sha256:
|
|
1616
|
-
"sha256:
|
|
1617
|
-
"sha256:
|
|
1618
|
-
"sha256:
|
|
1619
|
-
"sha256:
|
|
1620
|
-
"sha256:
|
|
1621
|
-
"sha256:
|
|
1622
|
-
"sha256:
|
|
1623
|
-
"sha256:
|
|
1624
|
-
"sha256:
|
|
1625
|
-
"sha256:
|
|
1626
|
-
"sha256:
|
|
1627
|
-
"sha256:
|
|
1628
|
-
"sha256:
|
|
1629
|
-
"sha256:
|
|
1630
|
-
"sha256:
|
|
1631
|
-
"sha256:
|
|
1632
|
-
"sha256:
|
|
1633
|
-
"sha256:
|
|
1634
|
-
"sha256:
|
|
1635
|
-
"sha256:
|
|
1636
|
-
"sha256:
|
|
1637
|
-
"sha256:
|
|
1638
|
-
"sha256:
|
|
1639
|
-
"sha256:
|
|
1640
|
-
"sha256:
|
|
1641
|
-
"sha256:
|
|
1642
|
-
"sha256:
|
|
1643
|
-
"sha256:
|
|
1644
|
-
"sha256:
|
|
1645
|
-
"sha256:
|
|
1646
|
-
"sha256:da028256b04ec30e5e0114b6f76172938c313991f0a2d3d894271315cf5d5e43",
|
|
1647
|
-
"sha256:dcbf65f1f66a26cdd88c35cf68fb4729c5d1cd2e88added72420541dfb212034",
|
|
1648
|
-
"sha256:dd34767fa19848d35659ffc0a75314f58c7af3f1cd87ec521e8292a1238398a3",
|
|
1649
|
-
"sha256:ddf799247318f34dbcd2efa8c95a8d0642674e926bb1774cf9b63dfd2a389d1c",
|
|
1650
|
-
"sha256:de286598cc65d2b489411174b1faec2f5a7775fb3201fd925db2a76b4030f37d",
|
|
1651
|
-
"sha256:e471bc5769ff073b058cfadb0d736b56ce067c8560eabeb0da88462df98c23e7",
|
|
1652
|
-
"sha256:e854312c4103f2ad4c0dc023b69b77ebfd2c89db5f86c4c94dc2353f9a92167e",
|
|
1653
|
-
"sha256:ea8cd6ca0ee9f616aaef3afc6882e32c2cbf18b00d96313ffd76af650574034d",
|
|
1654
|
-
"sha256:f2302660e32562a532b442480121aef8aa61a5bdb20b30bf0adab29f10a5a4b4",
|
|
1655
|
-
"sha256:f497a1ea81d4cd7c10ddcaa685135b9aabd291af3d55775a9ddf3cb7a364cdd9",
|
|
1656
|
-
"sha256:f4ddbe407477f04c45115d1a4e5bc480f753553b534d338d4c3358b1cdd0ea52",
|
|
1657
|
-
"sha256:f747dc8edcfe740130f28f32f3995e955494285717e86ee25af51db2219df08a",
|
|
1658
|
-
"sha256:fad54e871165f6ec2f536063ac74c3104508a12963e64072ba44bd822de52b0c",
|
|
1659
|
-
"sha256:fc459e5d73be2d6332fcfe8dbf3d8994671fe33c700f4565988ecfa511547253",
|
|
1660
|
-
"sha256:fd86572566fb40189a8260446158235159bc7a82dfbc87a3b39cf4fb57fcec1c"
|
|
1557
|
+
"sha256:014c83ba1ec97993cfe94e77fe6b56daa76bc0c218b86938971574c28942d044",
|
|
1558
|
+
"sha256:039b264cdb31c44b48f9821e2afbf8f37df49e0fb837e24a942918b36c567e31",
|
|
1559
|
+
"sha256:04cb445bed86aaf00aaa97d41a8b6e30f100f21e81c34caaec4efc684cb57768",
|
|
1560
|
+
"sha256:04d92589e481a8b68a005a5a1e0646a91c76f322c397c4635298c57cf63699b5",
|
|
1561
|
+
"sha256:0904f3b79d7b845bef0715afe1900da634d12b97f05b9479cb472880ca07cb9c",
|
|
1562
|
+
"sha256:0907f39b49ae818fe8af50aaa0f19afbc8ca164aea0865181ca7af17a3ac690b",
|
|
1563
|
+
"sha256:0e763087828ee9644f0c89c57f9b75f0a50fdf3e8f5d8fac5cfc351337e89a99",
|
|
1564
|
+
"sha256:105c00efb65c863630b2b63cbf7b8267e4da2d44b62284efbb19a03b04c337d4",
|
|
1565
|
+
"sha256:13609d9d77249447aa73357b14831b0f3b95f275026c9ff20dd105f981f53a0c",
|
|
1566
|
+
"sha256:1c5d273c5f1411c0d26c4f066c398d4a434b1f97bb5fa409189bedce86d4add4",
|
|
1567
|
+
"sha256:1d9a1b5813d00ea6151f6ccf64d1fa16892771dfdda12ba87162d15ec4ea3e1e",
|
|
1568
|
+
"sha256:243971550fb46c3039257f75e65610002d84304c505f609bbd9779e20a653a0a",
|
|
1569
|
+
"sha256:2f5cc48a845d755b6db236f8c29c2b54773eb4c7e4ee2ead43812d73718784b0",
|
|
1570
|
+
"sha256:33b830850488acbcd358c78a4fecfafe7031667b4da8ddff5546295dc962cdeb",
|
|
1571
|
+
"sha256:33c0da852e8a40246cd8e20cf3b2fc17ca52a45e9b5f7983c93db26f5d24b87b",
|
|
1572
|
+
"sha256:36a0a3f42ed7dfdbca2a69a541519ffd5064a5692152fc0018109e74370d7345",
|
|
1573
|
+
"sha256:37c94712e533ea06f0b1e4d934811c520b1914ce0e4da3916220717aa7a86bc6",
|
|
1574
|
+
"sha256:3b16a7959d04b1497281c062c180413565c3f3469211d78799ad5b9a75f67796",
|
|
1575
|
+
"sha256:419d2aadd5746efc2e9df0f33c05570d8192e6f6a6098ab05acce586f44ce8a5",
|
|
1576
|
+
"sha256:420c66e35d85c0ca5dc6a38147d83ef239762542900e5921ebbdb89333c540ea",
|
|
1577
|
+
"sha256:4bf9d8a35f77df5638c61b5012ba5225109ec1cc15bc5eb097036b3c3cc939f3",
|
|
1578
|
+
"sha256:4d2b86f81c1c9310a7e774e3cc9e927a3d0bf583ecbfa01498dd626930025428",
|
|
1579
|
+
"sha256:535747dbc200349d7fb434cffcb28e770f0290f69b225f56dc3803aa7210cdea",
|
|
1580
|
+
"sha256:571173fa04c8e8d6235ab32ae67fecca97777e2e1b4a1a30f3022c34e397c1c1",
|
|
1581
|
+
"sha256:5734d47669118d75c28981e562d4530ceb77342d31ffef6def5edd5ad4f05d7b",
|
|
1582
|
+
"sha256:58055adffabfa243516a197aa9f85f0dd56d905b0fba1a10193269759c29ccb0",
|
|
1583
|
+
"sha256:58e91be0a233adef698d3e6be54f10401bb91fd7854c0d4c4d50e0d3711e72f1",
|
|
1584
|
+
"sha256:59b75818e3046e9319143157f3dc4b43679a550c2060a17cbf3e39cc0b552925",
|
|
1585
|
+
"sha256:5c60915ebb8f562317ba5ff6b8c32e25c0882289b201a9f2fb2987f91efd95d8",
|
|
1586
|
+
"sha256:5fe465bc691264adce601527a972990c1174075d86bcbe9968fd20c95e0b1948",
|
|
1587
|
+
"sha256:60fb0ca084a92da96474b8b405a7ea76dfecac3c68db54383e7934b6f3871169",
|
|
1588
|
+
"sha256:6466c6999545cf00c4c142dfcbbf2db396dc735f005dcf8f91d57e351a79472b",
|
|
1589
|
+
"sha256:66b08ba4c5cbf0eaa2e9692b203073f198d5d469d8b15d1c7a4854ce7032b2e2",
|
|
1590
|
+
"sha256:6a2c37c3114f87ca7f10113756026eecb49656514debad600dcbec21f355ccea",
|
|
1591
|
+
"sha256:6caf54ffbf84b30470a8118f275afee9234e616572e4e41bae1dc19198c37294",
|
|
1592
|
+
"sha256:6d4da2baab6d96ceedd9176b3c142e1198b0310bc8dc04e18a3caab65c3a322c",
|
|
1593
|
+
"sha256:6fbb61617af1c56f95d53170ae9fa6c9aef6de1abd02fcc50064bfc672efb18d",
|
|
1594
|
+
"sha256:70f266b536c590060b707dddfb6cf9f17e24fd30b992242e774543d256265c43",
|
|
1595
|
+
"sha256:7471bc920d97c51c37ea8127f13b2adca43c3d78c53313b26a1f428e99d2c254",
|
|
1596
|
+
"sha256:77849525340c99f516d793dddbcee16b18d50af892ac43c8de1a6f343d41e3b5",
|
|
1597
|
+
"sha256:78853ca3c6ca2f012daa2b07dbabbb8db0f09d4dbe8ee828d294b3445d3f4cd8",
|
|
1598
|
+
"sha256:7a0d1f026b72d627fa5c8a57cbc86ad209b64aa2a65833c83b290ace5cbee126",
|
|
1599
|
+
"sha256:7a2da3d81cfe17c18038c6d98e6592aa9147d596d056119b0ee612c3c8bd5230",
|
|
1600
|
+
"sha256:7f2ef591e381cc36b8e53334e1b842c760c520c8a52d01e8626209400e93fe6a",
|
|
1601
|
+
"sha256:8134f0e0723e080d1c27bbe8fc149f0162e429fa1852482150015d0fce83eaf1",
|
|
1602
|
+
"sha256:851f49e7bd7d1cdaf328f3133942b252d5e3d3380690131f423cba8e435b87f5",
|
|
1603
|
+
"sha256:8b4910cce599cd2438f8da65f5ef199a70a1cdb6ab314926df78271ca5954240",
|
|
1604
|
+
"sha256:909f265c8c41f04c824bf741b2601fdcb56cab4bf56e018996b6494192ba0f58",
|
|
1605
|
+
"sha256:914eead2b843fc357f733b3fe39cc94f1b53d466e8cfe03080b1ed9d24ccfc73",
|
|
1606
|
+
"sha256:9193f7150937a4fd836b10eaa123e15d98e961d1fabac07e60adf2d4785f888a",
|
|
1607
|
+
"sha256:9818486c2bac88ae931df7e04905ee29bef49fd218c00f5f02bed4855254a101",
|
|
1608
|
+
"sha256:9c012ec357dec9408a83dad5541172a63c5cfa1421709f2e5811480d31ae1b28",
|
|
1609
|
+
"sha256:9c301fe9990cb5c081bf4881cb498743807c8e0e93fad7b85c02788456492ef8",
|
|
1610
|
+
"sha256:9c61cb7eaabcfa609c5bc0f5ff5869d72a2f02f17994e5fba5f971de516f3c82",
|
|
1611
|
+
"sha256:9f0a80f4c8ac3f774210b1cc1bc0e31e75502f2818dda9a144ff90e702c4d91d",
|
|
1612
|
+
"sha256:a7af571767a2ee342a171c16fc1b1a07a0bf511606d381703fb7cf397fe49d46",
|
|
1613
|
+
"sha256:a8ac51a2e441e9119b9395f4d893fbc4934c64c8ba58be9b9eaa85591249e548",
|
|
1614
|
+
"sha256:ab565a405bfdea61260145d8cc987aa66d1998fd0e0ccd4348008f4e6a39ee33",
|
|
1615
|
+
"sha256:adb4a5fef041f7179bb264203add873c147d169cf2f8d0adae89ff2e51271bac",
|
|
1616
|
+
"sha256:b6795ca4198d6cb7fc2c6163214f6555a6bc5f0ae1e268e76139dec4b37c4499",
|
|
1617
|
+
"sha256:c050bbc7bba94c77e4ed7438f4fda1babe98ab145691d80aa6f60df934a1468b",
|
|
1618
|
+
"sha256:c13230b688fbb9122251b74daa092175811eb64cb7bd1c98e2c8193dfa2b0bd5",
|
|
1619
|
+
"sha256:c1f17a8caebe0facd4556b1e0adfe0987c17feebed88e7bb6b5365c45c84c5d6",
|
|
1620
|
+
"sha256:c2e66f3f22d6c1515ce70f2e7c3e9c6f3ff0ff33480125c9f9c53e8f6508e30f",
|
|
1621
|
+
"sha256:c33e9e4878972f430b0cc06de3bf2a28d054a9efb4f8426d27de0d9cb81396ff",
|
|
1622
|
+
"sha256:c41e9b60fc0fa57f5d73306417d2f9d668202cca6944f9435878c55a5e7ae213",
|
|
1623
|
+
"sha256:c8102deaf911938233f760426e6a5e287388521de95111d5c8de26c8a1028924",
|
|
1624
|
+
"sha256:c9c2795ee3692097ff226ab806005d36bb9691fca9b35353542b57ea749cc830",
|
|
1625
|
+
"sha256:cda36d8e7bfd63b3e44e75163265429caa5d935b672b00f71bccc8c010518c64",
|
|
1626
|
+
"sha256:d0f845539230b8269aec902bc978b0cc403f52f002d18a04492efc943404d0bc",
|
|
1627
|
+
"sha256:d1322f237c2979b84096f4239c17828ff17fea6b3bbe96c44381c5f587c44c26",
|
|
1628
|
+
"sha256:d32e5ca5f16dafb269ee50b60d32b00c704b3f6f78e238105f1d94a3a5f24bf5",
|
|
1629
|
+
"sha256:d67b0462c8a3c3d93033e7c79cacdfc57d08e5220d9115bcb24a23edf5a5900d",
|
|
1630
|
+
"sha256:d76bdc1f9396ae70a55d050cf9743d88141c62ce0a22a3f627fab1d11c2f8bc6",
|
|
1631
|
+
"sha256:d8429bf97906bfe6c61f9dbfb3342e0d88120da61939da8bd04f830cc3eab3b8",
|
|
1632
|
+
"sha256:da5057e1bb257c967feee8ba67f3ebf379e801c7717f238b3d8c9caf00fc8f93",
|
|
1633
|
+
"sha256:dacd0ecd08fda3cb2f85b60cabea7da326dcb2fc15fbb23a88830a80144cc9f2",
|
|
1634
|
+
"sha256:dc366f158e2fb2add9d4e57338ca48f12611024278688ee657eb0b853fcb5de5",
|
|
1635
|
+
"sha256:e1eff22b831dfd5694989cc1f0789980f18391f614ac67c851af9a8e6d25e9ba",
|
|
1636
|
+
"sha256:e4b2d5e847fb7958583b74910cc19e5ec4ece514487385677b26433b2546116e",
|
|
1637
|
+
"sha256:e532f34d42d1a421fa00ed6b7735d14ac2e340256c1bad26a5e1dc1252b0bed7",
|
|
1638
|
+
"sha256:e5f077641a6713ce9d38df9e85d4fb9e008677fc0775cbaeb32ddfc3b319d4ca",
|
|
1639
|
+
"sha256:e715909b0966d1774d8a26e14e2f4a3ae75909dca526901c6306286b2dcbfbdc",
|
|
1640
|
+
"sha256:e753db9e40dda7302e0ac3e1e6e1325fb7f7b4694f87a7314ab15dd5d57911a7",
|
|
1641
|
+
"sha256:e7967ea55c6dea6becba4d5870e2fa0aa4915a8be7ebff1bb79e6207aa75ce8d",
|
|
1642
|
+
"sha256:ef11695493ec3f06f7b2678ca274bcabb4ca04057317df268ddbfd8b05f661a8",
|
|
1643
|
+
"sha256:f27e980f2feba5dfe7a32b22b125470de69c0bd113c75e16165de909a777f512",
|
|
1644
|
+
"sha256:f2cf17b33773be446a588551ea6a746b2d70dd0bc90dc31f1dd7648975a63c6b",
|
|
1645
|
+
"sha256:f44e7579a769a21d5b5e3166916bfe30ee175aaffff750324cbb11be2dbec5ad",
|
|
1646
|
+
"sha256:f48a85bb437fab7782021c40bfee6b15146928b96960d008ace41b6901a0f21d",
|
|
1647
|
+
"sha256:fb40cac5b1a6378fdccc99268f1033112ee4636e4fd9aaf240f6930d1fcea12c"
|
|
1661
1648
|
],
|
|
1662
1649
|
"index": "pypi",
|
|
1663
1650
|
"markers": "python_version >= '3.10'",
|
|
1664
|
-
"version": "==7.14.
|
|
1651
|
+
"version": "==7.14.2"
|
|
1665
1652
|
},
|
|
1666
1653
|
"cryptography": {
|
|
1667
1654
|
"hashes": [
|
|
@@ -1733,11 +1720,11 @@
|
|
|
1733
1720
|
},
|
|
1734
1721
|
"filelock": {
|
|
1735
1722
|
"hashes": [
|
|
1736
|
-
"sha256:
|
|
1737
|
-
"sha256:
|
|
1723
|
+
"sha256:10cdb3656fc44541cdf30652a93fb10ec6b05325620eb316bd26893e4201538a",
|
|
1724
|
+
"sha256:dac1648087d5115554850d113e7dd8c83ab2d38e3435dde2d4f163847e57b767"
|
|
1738
1725
|
],
|
|
1739
1726
|
"markers": "python_version >= '3.10'",
|
|
1740
|
-
"version": "==3.29.
|
|
1727
|
+
"version": "==3.29.4"
|
|
1741
1728
|
},
|
|
1742
1729
|
"flake8": {
|
|
1743
1730
|
"hashes": [
|
|
@@ -2632,12 +2619,12 @@
|
|
|
2632
2619
|
},
|
|
2633
2620
|
"pytest": {
|
|
2634
2621
|
"hashes": [
|
|
2635
|
-
"sha256:
|
|
2636
|
-
"sha256:
|
|
2622
|
+
"sha256:1088fbde8f2b49d95a549a195707afa7a76a3ce9bcadc26b6d71f0ffda5fe313",
|
|
2623
|
+
"sha256:37a86b45efb9a47a61a36449063e8e18d0cab3161329fc099eb21783169c4f0c"
|
|
2637
2624
|
],
|
|
2638
2625
|
"index": "pypi",
|
|
2639
2626
|
"markers": "python_version >= '3.10'",
|
|
2640
|
-
"version": "==9.
|
|
2627
|
+
"version": "==9.1.1"
|
|
2641
2628
|
},
|
|
2642
2629
|
"pytest-cov": {
|
|
2643
2630
|
"hashes": [
|
|
@@ -3055,11 +3042,11 @@
|
|
|
3055
3042
|
},
|
|
3056
3043
|
"vcrpy": {
|
|
3057
3044
|
"hashes": [
|
|
3058
|
-
"sha256:
|
|
3059
|
-
"sha256:
|
|
3045
|
+
"sha256:7ce58c9e2792b246f79d6f4b3e9660676cc6f853be17e1547305b4437ab1ff85",
|
|
3046
|
+
"sha256:d73a6e4eb6dae8148e659764b7a00e68cc51ba29ba9e6a85e1f0790ad96b97df"
|
|
3060
3047
|
],
|
|
3061
3048
|
"markers": "python_version >= '3.10'",
|
|
3062
|
-
"version": "==8.
|
|
3049
|
+
"version": "==8.2.1"
|
|
3063
3050
|
},
|
|
3064
3051
|
"vcs-versioning": {
|
|
3065
3052
|
"hashes": [
|
|
@@ -3071,11 +3058,11 @@
|
|
|
3071
3058
|
},
|
|
3072
3059
|
"virtualenv": {
|
|
3073
3060
|
"hashes": [
|
|
3074
|
-
"sha256:
|
|
3075
|
-
"sha256:
|
|
3061
|
+
"sha256:55aa670b67bbfb991b03fda39bd3276d92c419d702376e98c5df1c9989a26783",
|
|
3062
|
+
"sha256:dca3bf98275a59c652b69d68e73433e597d977c2da9198882479d1a7188009c8"
|
|
3076
3063
|
],
|
|
3077
|
-
"markers": "python_version >= '3.
|
|
3078
|
-
"version": "==21.
|
|
3064
|
+
"markers": "python_version >= '3.9'",
|
|
3065
|
+
"version": "==21.5.1"
|
|
3079
3066
|
},
|
|
3080
3067
|
"watchfiles": {
|
|
3081
3068
|
"hashes": [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import json
|
|
2
1
|
import logging
|
|
3
2
|
import re
|
|
3
|
+
from pathlib import Path
|
|
4
4
|
|
|
5
5
|
import camelot # pip install camelot-py==1.0.9 for now
|
|
6
6
|
|
|
@@ -178,7 +178,7 @@ We probably want code that tells us what PDF this is pulled from, on which row.
|
|
|
178
178
|
"""
|
|
179
179
|
|
|
180
180
|
|
|
181
|
-
def parse_pdf(pdffile: str, field_fixes: dict | None = None):
|
|
181
|
+
def parse_pdf(pdffile: str | Path, field_fixes: dict | None = None):
|
|
182
182
|
"""Parse a PDF file to extract data from tables.
|
|
183
183
|
|
|
184
184
|
Args:
|
|
@@ -227,7 +227,7 @@ def parse_pdf(pdffile: str, field_fixes: dict | None = None):
|
|
|
227
227
|
patchedheaders.append(field_fixes[item])
|
|
228
228
|
else:
|
|
229
229
|
logger.debug(
|
|
230
|
-
f"New header type found: {item}, not in {' '.join(sorted(list(field_fixes.keys())))}"
|
|
230
|
+
f"New header type found: {item}, not in field_fixes: '{' '.join(sorted(list(field_fixes.keys())))}'"
|
|
231
231
|
)
|
|
232
232
|
patchedheaders.append(item)
|
|
233
233
|
orphanholder = {
|
|
@@ -257,7 +257,7 @@ def parse_pdf(pdffile: str, field_fixes: dict | None = None):
|
|
|
257
257
|
patchedheaders.append(field_fixes[item])
|
|
258
258
|
else:
|
|
259
259
|
logger.debug(
|
|
260
|
-
f"New header type found: {item}, not in {' '.join(sorted(list(field_fixes.keys())))}"
|
|
260
|
+
f"New header type found: {item}, not in field_fixes: '{' '.join(sorted(list(field_fixes.keys())))}'"
|
|
261
261
|
)
|
|
262
262
|
patchedheaders.append(item)
|
|
263
263
|
headerfirst = patchedheaders
|
|
@@ -286,7 +286,7 @@ def parse_pdf(pdffile: str, field_fixes: dict | None = None):
|
|
|
286
286
|
isheader = False
|
|
287
287
|
orphanedheader = False
|
|
288
288
|
|
|
289
|
-
else: #
|
|
289
|
+
else: # seendata
|
|
290
290
|
if isheader: # Supplement to a header on a latter page
|
|
291
291
|
filerowholder.append(
|
|
292
292
|
"\tMostly empty row, seems to be appending to a header"
|
|
@@ -325,6 +325,7 @@ def parse_pdf(pdffile: str, field_fixes: dict | None = None):
|
|
|
325
325
|
locallist[-1][
|
|
326
326
|
fieldname
|
|
327
327
|
] = cleancell # Add it to the previous line
|
|
328
|
+
locallist[-1]["_int_raw_fields"].extend(row)
|
|
328
329
|
isheader = False
|
|
329
330
|
|
|
330
331
|
else:
|
|
@@ -341,16 +342,18 @@ def parse_pdf(pdffile: str, field_fixes: dict | None = None):
|
|
|
341
342
|
for cellindex, cell in enumerate(row):
|
|
342
343
|
line[headerfirst[cellindex]] = clean_cell(cell)
|
|
343
344
|
filerowholder.append(f"\t\t{line}")
|
|
345
|
+
line["_int_raw_fields"] = row
|
|
344
346
|
locallist.append(line)
|
|
345
347
|
|
|
346
348
|
report = table.parsing_report
|
|
347
349
|
|
|
348
350
|
for lineindex, line in enumerate(locallist):
|
|
349
351
|
line["_int_accuracy"] = report["accuracy"]
|
|
350
|
-
line["_int_pdf_filename"] = pdffile.split("/")[-1].split("\\")[-1]
|
|
352
|
+
line["_int_pdf_filename"] = str(pdffile).split("/")[-1].split("\\")[-1]
|
|
351
353
|
line["_int_page"] = report["page"]
|
|
352
354
|
line["_int_table_number"] = report["order"]
|
|
353
|
-
line["_int_raw_fields"] =
|
|
355
|
+
# line["_int_raw_fields"] = row # HEY! Need to handle for supplemented lines
|
|
356
|
+
# line["_int_raw_fields"] = json.dumps(list(line.values()))
|
|
354
357
|
line["_int_data_items"] = count_data_items(line) # type: ignore
|
|
355
358
|
if "Event Number" in line:
|
|
356
359
|
line["Event Number"] = line["Event Number"].replace("\n", "")
|