def need_to_update_release():
ftp = FTP('ftp.ncbi.nlm.nih.gov')
ftp.login()
ftp.cwd('genbank')
"""
Check whether the user currently has the latest GB release (in which case
we only need to download the daily updates) or whether they have an old
release or no release, in which case we need to download everything)
"""
try:
current_release_number = int(open('GB_Release_Number').read())
logging.info(
'You currently have GB release number {}'
.format(current_release_number)
)
except IOError:
logging.info('No current release, downloading the files')
return True
latest_release_file = StringIO()
ftp.retrlines('RETR GB_Release_Number', latest_release_file.write)
latest_release_number = int(latest_release_file.getvalue())
logging.info('Latest release number is {}'.format(latest_release_number))
if current_release_number == latest_release_number:
logging.info('You have the latest release, getting daily updates')
return False
else:
logging.info('New release available, downloading the files')
return True
评论列表
文章目录