コード例 #1
0
ファイル: contrast_out.py プロジェクト: GiorgosPa/scoap3
    def _download_tars(self, check_integrity=True):
        if check_integrity:
            check_pkgs_integrity(self.retrieved_packages, self.logger, self.ftp)

        print >> sys.stdout, "\nDownloading %i tar packages." \
                 % (len(self.retrieved_packages))
        # Create progrss bar
        p_bar = progress_bar(len(self.files_list))
        # Print stuff
        sys.stdout.write(p_bar.next())
        sys.stdout.flush()

        for filename in self.retrieved_packages.iterkeys():
            self.logger.info("Downloading tar package: %s" % (filename,))
            unpack_path = join(CFG_TAR_FILES, filename)
            self.retrieved_packages_unpacked.append(unpack_path)
            try:
                tar_file = open(unpack_path, 'wb')
                self.ftp.retrbinary('RETR %s' % filename, tar_file.write)
                tar_file.close()
            except:
                register_exception(alert_admin=True, prefix="Elsevier package download faild.")
                self.logger.error("Error downloading tar file: %s" % (filename,))
                print >> sys.stdout, "\nError downloading %s file!" % (filename,)
                print >> sys.stdout, sys.exc_info()
            # Print stuff
            sys.stdout.write(p_bar.next())
            sys.stdout.flush()

        return self.retrieved_packages_unpacked
コード例 #2
0
ファイル: springer_package.py プロジェクト: GiorgosPa/scoap3
    def _download_tars(self, check_integrity=True):
        self.retrieved_packages_unpacked = []
        # Prints stuff
        if self.files_list:
            if check_integrity:
                check_pkgs_integrity(self.files_list, self.logger, self.ftp)

            print >> sys.stdout, "\nDownloading %i tar packages." \
                                 % (len(self.files_list))
            # Create progrss bar
            p_bar = progress_bar(len(self.files_list))
            # Print stuff
            sys.stdout.write(p_bar.next())
            sys.stdout.flush()

            for filename in self.files_list:
                self.logger.info("Downloading tar package: %s" % (filename,))
                unpack_path = join(CFG_TAR_FILES, filename)
                self.retrieved_packages_unpacked.append(unpack_path)
                try:
                    tar_file = open(unpack_path, 'wb')
                    self.ftp.retrbinary('RETR %s' % filename, tar_file.write)
                    tar_file.close()
                except:
                    self.logger.error("Error downloading tar file: %s" % (filename,))
                    print >> sys.stdout, "\nError downloading %s file!" % (filename,)
                    print >> sys.stdout, sys.exc_info()
                # Print stuff
                sys.stdout.write(p_bar.next())
                sys.stdout.flush()

            return self.retrieved_packages_unpacked
        else:
            print >> sys.stdout, "No new packages to download."
            self.logger.info("No new packages to download.")
            raise NoNewFiles