This repository is a SENG3011 project. The aim is to collect data about health related articles from different sources to help others analyse and track epidemics. There is also the source code for Covid-Scout, a interactive web application that focuses in helping everyone worldwide with the latest statistics and news about the coronavirus.
- Aaron (z5208530)
- Kevin (z5214693)
- Logann (z5294830)
- Peter (z5208980)
- Phase 1
Contains the API implementation, Scraper, Database and API Testscripts.
- Phase 2
Contains Webpage.
- Reports
Contains Design Details, Management Information Report, Testing Report and Final Report
- API-demic API (Docs) (Github) - An API that extracts new sources from H5N1 and trending health terms
- Covid-Scout (Github) (Website) - Responsive web application detailing latest statistics and news on Covid-19 globally and for Australians
These are API-demics latest versions and endpoints
Find articles according to query parameters
Parameters
Parameter | Required | Type | Description |
---|---|---|---|
start_date |
Required | String (YY-MM-DDTHH:MM:SS) | Start date for query |
end_date |
Required | String (YY-MM-DDTHH:MM:SS) | End date for query |
location |
Optional | String | Location that articles will focus on |
key_term |
Optional | List | List of string with seperator as , |
limit |
Optional | Int | number of new articles to return |
Response
200
{
"articles": [
{
"url": "string",
"date_of_publication": "string",
"header": "string",
"main_text": "string",
"reports": [
{
"event_date": "string",
"locations": [
{
"country": "string",
"location": "string"
}
],
"diseases": [
"string"
],
"syndromes": [
"string"
]
}
]
}
],
"log": {
"provider_name": "API-demic",
"accessed_time": "string",
"amount_of_articles": "string",
"response_time": "string"
}
}
400
{
"status": 400,
"message": "Invalid Query Parameters (Date)"
}
404
{
"status": 404,
"message": "No result for query"
}
Find the latest articles on certain topics
Parameters
Parameter | Required | Type | Description |
---|---|---|---|
on |
Required | List | List of string to search on, seperator as , |
Response
200
{
"articles": [
{
"url": "string",
"date_of_publication": "string",
"header": "string",
"main_text": "string",
"reports": [
{
"event_date": "string",
"locations": [
{
"country": "string",
"location": "string"
}
],
"diseases": [
"string"
],
"syndromes": [
"string"
]
}
]
}
],
"log": {
"provider_name": "API-demic",
"accessed_time": "string",
"amount_of_articles": "string",
"response_time": "string"
}
}
400
{
"status": 400,
"message": "Invalid Query Search Term: On Args",
"search_list": [
{
"term": "string"
},
]
}
404
{
"status": 404,
"message": "No result for query",
"search_list": [
{
"term": "string"
},
]
}
Find search phrases most used by others
Response
200
{
"trending_terms": [
"string"
],
"log": {
"provider_name": "API-demic",
"accessed_time": "string",
"amount_of_articles": "string",
"response_time": "string"
}
}
If you want to host the site for viewing, then you need
- Python
- Pip
- Virtualenv
$ git clone https://github.com/z5208980/SENG3011_API-demic.git
$ cd PHASE_2/API_SourceCode
$ source venv/bin/activate
$ pip3 install -r requirements.txt
$ python3 app.py
-
(API-demic) - Main source for new articles (Our API)
-
(Sixtyhww) - SENG3011 Team API for news articles
-
(Thevirustracker) - Covid-19 latest updates (Used as widget)
-
(CSSEGISandData) - Dataset for Covid-19 globally
-
(Data.NSW) - Dataset for latest Covid-19 positive in NSW
-
(The Guardian) - Dataset for Australia Covid-19 statistics by states
-
(Pomber) - Dataset for latest Covid-19 cases by country in timeseries