docs: def sync_save(self, res, overwrite=False):
          """ save ``res`` to local synchronized
  
          :param res: {'url': '', 'name': ''}
          :type res: dict
          :param overwrite:
          :type overwrite:
          :return:
          :rtype: BeautifulSoup
          """
          if not isinstance(res, dict):
              raise CrawlerParamsError('res must be dict')
  
          url_, file_name = res.get('url', ''), res.get('name', '')
          if not url_ or not file_name:
              raise CrawlerParamsError('url&name is needed!')
  
          # log.debug('Sync {}'.format(res.get('name')))
          # not overwrite and file exists
          if not overwrite and helper.is_file_ok(file_name):
              return True
  
          cnt = self.do_sess_get(url_)
          # get res failed
          if not cnt:
              return False
  
          with open(file_name, 'wb') as f:
              f.write(cnt)
          zlog.debug('Sync Done {}'.format(res.get('name')))
          return True