Загрузите и распакуйте файл с помощью Python

Я пытаюсь загрузить и открыть заархивированный файл и, похоже, проблема с дескриптором типа файла с zipfile. Я получаю сообщение об ошибке «AttributeError: экземпляр addinfourl не имеет атрибута« искать »при запуске:

import zipfile import urllib2 def download(url,directory,name): webfile = urllib2.urlopen('http://www.sec.gov'+url) webfile2 = zipfile.ZipFile(webfile) content = zipfile.ZipFile.open(webfile2).read() localfile = open(directory+name, 'w') localfile.write(content) localfile.close() return() download(link.get("href"),'./fails_data', link.text) 

2 Solutions collect form web for “Загрузите и распакуйте файл с помощью Python”

Вы не можете искать файл urllib2.urlopen ed. Поддерживаемые методы перечислены здесь: http://docs.python.org/library/urllib.html#urllib.urlopen .

Вам нужно будет восстановить файл (возможно, с urllib.urlretrieve , http://docs.python.org/library/urllib.html#urllib.urlretrieve ), а затем использовать zipfile .

Кроме того, вы можете read() файл urlopen ed, а затем поместить его в StringIO , а затем использовать zipfile , если хотите получить данные в zip- zipfile в памяти. Также проверьте методы extract и extract_all zipfile если вы просто хотите извлечь файл, вместо использования read .

Соединяя вещи, следующее получает содержимое первого файла в zip-файле с веб-сайта:

 import urllib import zipfile url = 'http://www.gutenberg.lib.md.us/4/8/8/2/48824/48824-8.zip' filehandle, _ = urllib.urlretrieve(url) zip_file_object = zipfile.ZipFile(filehandle, 'r') first_file = zip_file_object.namelist()[0] file = zip_file_object.open(first_file) content = file.read() 
  • Python с расширением ZIP64 при сжатии больших файлов
  • zipfile не может обрабатывать данные типа zip?
  • Использование Python для добавления списка файлов в zip-файл
  • Использование модуля openpyxl для записи в электронную таблицу создает поврежденную электронную таблицу, как исправить с помощью zipfile-модуля?
  • распаковка файлов приводит к «BadZipFile: файл не является zip-файлом»
  • Извлечение файлов из zip без сохранения структуры с использованием python ZipFile?
  • Python zip подпапку, а не весь путь к папке
  • искать () файл в zip-файле в Python, не передавая его в память
  •  
    Interesting Posts for Van-Lav

    Пользовательское поле list_editable в списке изменений admin django, который не соответствует прямому полю модели

    scrapy spider не возвращает никаких результатов

    как сравнить два столбца в пандах, чтобы сделать третий столбец?

    количество дней в сети по времени дня

    «pydoc -w EXPRESSIONS» не работает, но «pydoc EXPRESSIONS» делает. Зачем? (все заглавные разделы справки)

    Получить подмножество словаря Python

    Элегантный и быстрый способ последовательного перебора двух или более контейнеров в Python?

    Поверните приложение или скрипт в команду оболочки

    Эффективно выберите строки, которые соответствуют одному из нескольких значений в Pandas DataFrame

    Каким образом программа Python / Twisted может проверить сертификат SSL под Windows?

    Как я могу загрузить все ключи из dict в качестве локальных переменных, лучше aproach?

    Как использовать регулярное выражение python для замены с помощью захваченной группы?

    Python разделяет строку на несколько строк

    Внесите MATLAB's im2col 'slide' в Python

    Python – создание таблицы

    Python - лучший язык программирования в мире.