def save_file(self, buffer, content_type, basename): """ for example) 1)http://www.example.co.jp/Netzawar.png => Netzawar.png 2)http://www.example.co.jp/ => example.suffix .suffix := self.getSuffix @param {io.BytesIO}buffer Response#content {string}contentType {string}basename """ suffix = self.getSuffix(content_type) logger.info('content-type:%s,decode:%s', content_type, suffix) with tempfile.NamedTemporaryFile(delete=False, suffix=suffix) as temp: temp.write(buffer.getvalue()) temp_file_name = temp.name if len(basename) == 0: logger.warning('create_filename:%s', os.path.basename(temp.name)) basename = os.path.basename(temp_file_name) p = Path(self.dataDir, basename).with_suffix(suffix) p = FileUtils.sequential(p) os.replace(temp_file_name, str(p))