Describe the general shape of this PR (new feature? refactor? bug fix? one-line change?)
New features.
Describe what changes are being made
Uses Selenium to navigate the Legistar/San Jose website to find and download [Memoranda] from [City Council] meetings from [Last Month]. The file and city are sent as command line parameters. The program will search from "Memorandum" from "City Council" for "Last Month" if no parameters are provided.
The downloads are saved to the path in the user's .env file. The full path needs to exist before running the program. It also renames the files according to a set of parameters related to the meeting.
This update switches the browser to Chrome as it allows downloads without user interaction. Firefox uses a pop-up window
That must be clicked by the user.
Describe why these changes are being made
The objective of this portion of the project is to acquire the aforementioned files and store them so that they can be saved
to Google Drive.
List the use cases and edge cases relevant to this PR
Specific to San Jose for now. Other cities handled by Legistar have coding patterns that require different handling.
If there are no meetings for the desired time period, the program encounters an error, though that has no impact on the project's goal.
There is an issue when Chrome fails to download a file. The program continues successfully, but those files, I think, are lost.
Describe how errors will be handled. How will we know if this code breaks in production
Working on a solution for failed downloads. There will be files with the original name, e.g. "Memorandum," instead of the computed one.
Describe any external libraries/dependencies added or removed in this PR
Describe any security risks are there regarding this change
Describe how you tested these changes
Link to relevant external documentation
:clipboard: Mandatory Checklist
[x] Example of a checked item (please remove when creating your Pull Request)
[ ] Linked to the Github Issues being addressed using the right sidebar :arrow_right:
[ ] Have you discussed these changes with the project leader(s)?
[ ] Do all variable and function names communicate what they do?
[ ] Were all the changes commented and / or documented?
[ ] Is the PR the right size? (If the PR is too large to review, it might be good to break it up into multiple PRs.)
[ ] Does all work in progress, temporary, or debugger code have a TODO comment with links to Github issues?
[ ] If you changed the user interface, did you add before and after screenshots to below?
:framed_picture: Screenshots and Screen Recordings
:scroll: Description
Describe the general shape of this PR (new feature? refactor? bug fix? one-line change?) New features.
Describe what changes are being made Uses Selenium to navigate the Legistar/San Jose website to find and download [Memoranda] from [City Council] meetings from [Last Month]. The file and city are sent as command line parameters. The program will search from "Memorandum" from "City Council" for "Last Month" if no parameters are provided.
The downloads are saved to the path in the user's .env file. The full path needs to exist before running the program. It also renames the files according to a set of parameters related to the meeting.
This update switches the browser to Chrome as it allows downloads without user interaction. Firefox uses a pop-up window That must be clicked by the user.
Describe why these changes are being made The objective of this portion of the project is to acquire the aforementioned files and store them so that they can be saved to Google Drive.
List the use cases and edge cases relevant to this PR Specific to San Jose for now. Other cities handled by Legistar have coding patterns that require different handling.
If there are no meetings for the desired time period, the program encounters an error, though that has no impact on the project's goal.
There is an issue when Chrome fails to download a file. The program continues successfully, but those files, I think, are lost.
Describe how errors will be handled. How will we know if this code breaks in production Working on a solution for failed downloads. There will be files with the original name, e.g. "Memorandum," instead of the computed one.
Describe any external libraries/dependencies added or removed in this PR
Describe any security risks are there regarding this change
Describe how you tested these changes
Link to relevant external documentation
:clipboard: Mandatory Checklist
[x] Example of a checked item (please remove when creating your Pull Request)
[ ] Linked to the Github Issues being addressed using the right sidebar :arrow_right:
[ ] Have you discussed these changes with the project leader(s)?
[ ] Do all variable and function names communicate what they do?
[ ] Were all the changes commented and / or documented?
[ ] Is the PR the right size? (If the PR is too large to review, it might be good to break it up into multiple PRs.)
[ ] Does all work in progress, temporary, or debugger code have a TODO comment with links to Github issues?
[ ] If you changed the user interface, did you add before and after screenshots to below?
:framed_picture: Screenshots and Screen Recordings
Before
After
:blue_book: Glossary