warn-scraper 1.2.93__tar.gz → 1.2.95__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.
Files changed (135) hide show
  1. {warn_scraper-1.2.93/warn_scraper.egg-info → warn_scraper-1.2.95}/PKG-INFO +1 -1
  2. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/va.py +13 -11
  3. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/utils.py +5 -3
  4. {warn_scraper-1.2.93 → warn_scraper-1.2.95/warn_scraper.egg-info}/PKG-INFO +1 -1
  5. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/.devcontainer/devcontainer.json +0 -0
  6. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/.github/dependabot.yml.disabled +0 -0
  7. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/.github/workflows/continuous-deployment.yml +0 -0
  8. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/.gitignore +0 -0
  9. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/.pre-commit-config.yaml +0 -0
  10. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/LICENSE +0 -0
  11. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/MANIFEST.in +0 -0
  12. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/Makefile +0 -0
  13. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/Pipfile +0 -0
  14. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/Pipfile.lock +0 -0
  15. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/README.md +0 -0
  16. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/Makefile +0 -0
  17. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/R42693.pdf +0 -0
  18. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/gao-03-1003.pdf +0 -0
  19. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-actions-finished.png +0 -0
  20. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-actions-start.png +0 -0
  21. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-changelog-button.png +0 -0
  22. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-changelog-entered.png +0 -0
  23. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-draft-button.png +0 -0
  24. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-name-release.png +0 -0
  25. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-name-tag.png +0 -0
  26. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-publish-button.png +0 -0
  27. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-pypi.png +0 -0
  28. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-release-published.png +0 -0
  29. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-releases-button.png +0 -0
  30. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_static/releasing-tag-button.png +0 -0
  31. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/_templates/sources.md.tmpl +0 -0
  32. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/conf.py +0 -0
  33. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/contributing.rst +0 -0
  34. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/index.rst +0 -0
  35. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/make.bat +0 -0
  36. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/reference.rst +0 -0
  37. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/releasing.md +0 -0
  38. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/requirements.txt +0 -0
  39. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/al.md +0 -0
  40. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/az.md +0 -0
  41. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/ca.md +0 -0
  42. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/co.md +0 -0
  43. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/dc.md +0 -0
  44. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/de.md +0 -0
  45. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/ia.md +0 -0
  46. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/in.md +0 -0
  47. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/job_center.md +0 -0
  48. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/ks.md +0 -0
  49. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/md.md +0 -0
  50. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/me.md +0 -0
  51. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/mo.md +0 -0
  52. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/ny.md +0 -0
  53. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/ok.md +0 -0
  54. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/or.md +0 -0
  55. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/sc.md +0 -0
  56. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/tx.md +0 -0
  57. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/ut.md +0 -0
  58. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/va.md +0 -0
  59. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/vt.md +0 -0
  60. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/scrapers/wi.md +0 -0
  61. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/sources.md +0 -0
  62. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/docs/usage.md +0 -0
  63. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/setup.cfg +0 -0
  64. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/setup.py +0 -0
  65. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/__init__.py +0 -0
  66. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/cassettes/test_cached_detail_pages.yaml +0 -0
  67. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/cassettes/test_cached_search_results.yaml +0 -0
  68. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/cassettes/test_missing_detail_page_values.yaml +0 -0
  69. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/cassettes/test_no_results.yaml +0 -0
  70. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/cassettes/test_paged_results.yaml +0 -0
  71. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/cassettes/test_scrape_integration.yaml +0 -0
  72. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/conftest.py +0 -0
  73. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/fixtures/2021_page_1.html +0 -0
  74. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/fixtures/2021_page_2.html +0 -0
  75. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/test_cache.py +0 -0
  76. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/test_delete.py +0 -0
  77. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/test_job_center.py +0 -0
  78. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/test_job_center_cache.py +0 -0
  79. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/tests/test_openpyxl.py +0 -0
  80. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/__init__.py +0 -0
  81. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/cache.py +0 -0
  82. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/cli.py +0 -0
  83. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/platforms/__init__.py +0 -0
  84. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/platforms/job_center/__init__.py +0 -0
  85. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/platforms/job_center/cache.py +0 -0
  86. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/platforms/job_center/site.py +0 -0
  87. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/platforms/job_center/urls.py +0 -0
  88. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/platforms/job_center/utils.py +0 -0
  89. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/runner.py +0 -0
  90. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/__init__.py +0 -0
  91. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ak.py +0 -0
  92. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/al.py +0 -0
  93. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/az.py +0 -0
  94. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ca.py +0 -0
  95. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/co.py +0 -0
  96. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ct.py +0 -0
  97. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/dc.py +0 -0
  98. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/de.py +0 -0
  99. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/fl.py +0 -0
  100. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ga.py +0 -0
  101. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/hi.py +0 -0
  102. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ia.py +0 -0
  103. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/id.py +0 -0
  104. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/il.py +0 -0
  105. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/in.py +0 -0
  106. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ks.py +0 -0
  107. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ky.py +0 -0
  108. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/la.py +0 -0
  109. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/md.py +0 -0
  110. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/me.py +0 -0
  111. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/mi.py +0 -0
  112. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/mo.py +0 -0
  113. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/mt.py +0 -0
  114. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ne.py +0 -0
  115. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/nj.py +0 -0
  116. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/nm.py +0 -0
  117. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ny.py +0 -0
  118. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/oh.py +0 -0
  119. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ok.py +0 -0
  120. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/or.py +0 -0
  121. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ri.py +0 -0
  122. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/sc.py +0 -0
  123. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/sd.py +0 -0
  124. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/tn.py +0 -0
  125. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/tx.py +0 -0
  126. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/ut.py +0 -0
  127. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/vt.py +0 -0
  128. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/wa.py +0 -0
  129. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn/scrapers/wi.py +0 -0
  130. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn_scraper.egg-info/SOURCES.txt +0 -0
  131. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn_scraper.egg-info/dependency_links.txt +0 -0
  132. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn_scraper.egg-info/entry_points.txt +0 -0
  133. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn_scraper.egg-info/not-zip-safe +0 -0
  134. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn_scraper.egg-info/requires.txt +0 -0
  135. {warn_scraper-1.2.93 → warn_scraper-1.2.95}/warn_scraper.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: warn-scraper
3
- Version: 1.2.93
3
+ Version: 1.2.95
4
4
  Summary: Command-line interface for downloading WARN Act notices of qualified plant closings and mass layoffs from state government websites
5
5
  Home-page: https://github.com/biglocalnews/warn-scraper
6
6
  Author: Big Local News
@@ -116,19 +116,21 @@ def scrape(
116
116
  chromeoptionsholder.add_argument("--remote-debugging-pipe")
117
117
  chromeoptionsholder.add_argument("--verbose")
118
118
 
119
- chrome_install = ChromeDriverManager().install()
120
-
121
- # Weird error with finding the driver name in Windows. Sometimes.
122
- if chrome_install.endswith("THIRD_PARTY_NOTICES.chromedriver"):
123
- chrome_install = chrome_install.replace(
124
- "THIRD_PARTY_NOTICES.chromedriver", "chromedriver.exe"
125
- )
119
+ if "CHROMEWEBDRIVER" in os.environ:
120
+ chrome_install = os.environ["CHROMEWEBDRIVER"]
121
+ else:
122
+ chrome_install = ChromeDriverManager().install()
123
+
124
+ # Weird error with finding the driver name in Windows. Sometimes.
125
+ if chrome_install.endswith("THIRD_PARTY_NOTICES.chromedriver"):
126
+ chrome_install = chrome_install.replace(
127
+ "THIRD_PARTY_NOTICES.chromedriver", "chromedriver.exe"
128
+ )
126
129
  logger.debug(f"Chrome install variable is {chrome_install}")
127
- # folder = os.path.dirname(chrome_install)
128
- # chromedriver_path = folder # os.path.join(folder, "chromedriver.exe")
129
- # service = ChromeService(chromedriver_path)
130
130
  service = ChromeService(chrome_install)
131
- driver = webdriver.Chrome(options=chromeoptionsholder, service=service)
131
+ driver = webdriver.Chrome(
132
+ options=chromeoptionsholder, service=service, service_args=["--verbose"]
133
+ )
132
134
  logger.debug(f"Attempting to fetch {csv_url}")
133
135
  driver.get(csv_url)
134
136
 
@@ -86,7 +86,7 @@ def save_if_good_url(filename, url, **kwargs):
86
86
  success_flag = False
87
87
  content = False
88
88
  else:
89
- with open(filename, "wb", encoding="utf-8") as outfile:
89
+ with open(filename, "wb") as outfile:
90
90
  outfile.write(response.content)
91
91
  success_flag = True
92
92
  content = response.content
@@ -109,7 +109,9 @@ def write_rows_to_csv(output_path: Path, rows: list, mode="w"):
109
109
  writer.writerows(rows)
110
110
 
111
111
 
112
- def write_dict_rows_to_csv(output_path, headers, rows, mode="w", extrasaction="raise"):
112
+ def write_dict_rows_to_csv(
113
+ output_path, headers, rows, mode="w", extrasaction="raise", encoding="utf-8"
114
+ ):
113
115
  """Write the provided dictionary to the provided path as comma-separated values.
114
116
 
115
117
  Args:
@@ -121,7 +123,7 @@ def write_dict_rows_to_csv(output_path, headers, rows, mode="w", extrasaction="r
121
123
  """
122
124
  create_directory(output_path, is_file=True)
123
125
  logger.debug(f"Writing {len(rows)} rows to {output_path}")
124
- with open(output_path, mode, newline="") as f:
126
+ with open(output_path, mode, newline="", encoding=encoding) as f:
125
127
  # Create the writer object
126
128
  writer = csv.DictWriter(f, fieldnames=headers, extrasaction=extrasaction)
127
129
  # If we are writing a new row ...
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: warn-scraper
3
- Version: 1.2.93
3
+ Version: 1.2.95
4
4
  Summary: Command-line interface for downloading WARN Act notices of qualified plant closings and mass layoffs from state government websites
5
5
  Home-page: https://github.com/biglocalnews/warn-scraper
6
6
  Author: Big Local News
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