32 lines
1.3 KiB
Python
32 lines
1.3 KiB
Python
from bs4 import BeautifulSoup
|
|
from HtmlTransformerUtil import HtmlTransformerUtil
|
|
from BatchcodeOptionsSetter import BatchcodeOptionsSetter
|
|
from HtmlUtils import getBatchcodeOptions, getBatchcodes
|
|
from DateProvider import DateProvider
|
|
|
|
|
|
def updateBatchCodeTableHtmlFile(batchCodeTable, batchCodeTableHtmlFile, lastUpdated):
|
|
batchcodeOptions = getBatchcodeOptions(getBatchcodes(batchCodeTable.sort_values(by = 'Adverse Reaction Reports', ascending = False)))
|
|
_saveBatchcodeOptions(batchcodeOptions, batchCodeTableHtmlFile)
|
|
saveLastUpdated2HtmlFile(lastUpdated, batchCodeTableHtmlFile)
|
|
|
|
def _saveBatchcodeOptions(batchcodeOptions, batchCodeTableHtmlFile):
|
|
HtmlTransformerUtil().applySoupTransformerToFile(
|
|
file=batchCodeTableHtmlFile,
|
|
soupTransformer = lambda soup:
|
|
BeautifulSoup(
|
|
BatchcodeOptionsSetter().setBatchcodeOptions(
|
|
html=str(soup),
|
|
options=batchcodeOptions),
|
|
'lxml'))
|
|
|
|
def saveLastUpdated2HtmlFile(lastUpdated, htmlFile):
|
|
def setLastUpdated(soup):
|
|
soup.find(id="last_updated").string.replace_with(
|
|
lastUpdated.strftime(DateProvider.DATE_FORMAT))
|
|
return soup
|
|
|
|
HtmlTransformerUtil().applySoupTransformerToFile(
|
|
file = htmlFile,
|
|
soupTransformer = setLastUpdated)
|