Разбор XML SAX парсером с FTP — различия между версиями
(Новая страница: «Раз нужен SAX парсер, значит на входе очень большие файлы. Основная проблема, как передать…») |
м (added Category:Python using HotCat) |
||
Строка 14: | Строка 14: | ||
parser.parse(file) | parser.parse(file) | ||
</source> | </source> | ||
+ | |||
+ | [[Категория:Python]] |
Текущая версия на 16:33, 12 апреля 2018
Раз нужен SAX парсер, значит на входе очень большие файлы. Основная проблема, как передать stream с ftp в sax парсер.
Вариант через urllib, на самом деле внутри urllib используется ftplib и можно посмотреть как данный вариант работает.
def parse_xml(url, username, password)
url = url.replace('//', '//{0}:{1}@'.format(username, password))
file = urllib.request.urlopen(url)
parser = sax.make_parser()
parser.setFeature(sax.handler.feature_namespaces, 0)
content_handler = SaxElemHandler(self)
parser.setContentHandler(content_handler)
parser.parse(file)