Skip to content

Conversation

@TryExceptElse
Copy link
Contributor

New Functionality

  • Data from various quarters can be retrieved.
  • User input is now validated before use, this improves user feedback and allows additional feedback in the future.

Improvements:

  • Use of a single data model class and helpers allows re-use of data access logic, and improves Extensibility.

New Modules:

  • model.py and contained classes now handle data access.
  • access.py handles access of model and data retrieval methods for view.
  • filter.py handles filtering of data.
  • input.py handles input validation.
  • schema.py contains input schema.

There are a number of things that still need improvement before this PR is merged, and so I'm creating this PR with the intent of getting additional eyes to find issues rather than with the intent to immediately bring it into master.

@phi-line
Copy link
Collaborator

Yeah we will have to coordinate how to handle the two datascrapers in unison. One will take care of handling live incoming data, and the other will handle archival data.

@TryExceptElse
Copy link
Contributor Author

Is there a reason the advanced scraper can't be used for all quarters, possibly with an optional argument to get either all or recent data? It might be easier to standardize our stored data in this way.

@phi-line
Copy link
Collaborator

Is there a reason the advanced scraper can't be used for all quarters, possibly with an optional argument to get either all or recent data? It might be easier to standardize our stored data in this way.

@TryExceptElse

I think this could be an option if the Selenium Webdriver is portable enough to work on the server. It is a possibility however. It also depends how frequently they update the advanced route. I can do a spike and see if we can nullify the need for the basic scraper. I do agree that it would make the data a lot more manageable in our DB.

@phi-line
Copy link
Collaborator

Please add documentation to the wiki in regards with how to use the new data model.

@TryExceptElse
Copy link
Contributor Author

To update on where things are right now: model.py needs a substantial refactor to use the new db organization, and it may be some time before that is completed. I'll try to document as things get done.

@phi-line
Copy link
Collaborator

That's fine. I'm working on a PR to provide the data in a new format for the model. It will be served with my current open PR.

@fractalbach
Copy link

There are a number of things that still need improvement before this PR is merged, and so I'm creating this PR with the intent of getting additional eyes to find issues rather than with the intent to immediately bring it into master

👀

@fractalbach
Copy link

@TryExceptElse
Copy link
Contributor Author

@fractalbach
I'm currently using Flask-Inputs with JsonSchema to validate inputs

@madhavarshney madhavarshney added the wontfix This will not be worked on label Jul 28, 2020
@madhavarshney madhavarshney marked this pull request as draft August 10, 2020 06:00
@phi-line
Copy link
Collaborator

Closing this, as issues are being addressed with current PRs

FYI @madhavarshney @TryExceptElse

@phi-line phi-line closed this Aug 10, 2020
@madhavarshney
Copy link
Member

I thought I'd leave it open until all of these changes are addressed, but that works as well 😄.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

wontfix This will not be worked on

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants