Синтаксический анализ запросов Python XML SAX создает значение ValueError: неизвестный тип URL - PullRequest
0 голосов
/ 22 ноября 2018

Я пытаюсь проанализировать файл RSS XML с помощью Diffused XML в Python 3.7.Соответствующий код выглядит следующим образом:

def parse_xml_links(file, path, output):
    handler = GenericContentHandler(path, output)
    dsax.parse(file, handler)

def fetch_changes():
    r = requests.get(rss_url)
    return r

updates = fetch_changes()
parse_xml_links(updates.text, path, output)

Заголовок XML-файла:

<?xml version="1.0" encoding="utf-8" ?>
<rss version="0.91">

Я получаю следующую ошибку при разборе:

ValueError:Неизвестный тип URL: '? xml version = "1.0" encoding = "utf-8"?> \ n \ n

Ошибка возникает только при попытке проанализировать объект запросов, то есть обновления.текст.Если я указываю на локальный файл XML, ошибок не возникает.

Я пробовал это решение , используя этот код:

parser = dsax.make_parser()
parser.setFeature(handler.feature_external_ges, False)
parser(file, handler, path, output)

Однако объект-обработчик не имеет атрибута "feature_external_ges".

Что является источником ошибки, и как вы рекомендуете исправить это?Очевидно, я мог бы сохранить объект запросов и проанализировать сохраненный файл;Тем не менее, я хотел бы понять, возможно ли проанализировать объект запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...