Получение WebPage для использования определенного URL-адреса для загрузки ресурсов HTML

У меня есть программа Qt, которая загружает веб-страницы (HTML), анализирует их, а затем генерирует свой собственный HTML, который затем отображается с помощью QWebPage. Иногда загружаемый мной HTML-код содержит теги IMG, которые прекрасно работают, когда атрибут src содержит полный URL-адрес. Однако иногда тег IMG может использовать относительный путь, например:

<IMG SRC="images/foo.png" />

Поскольку я знаю URL-адрес, который должен быть добавлен к SRC, моей первой мыслью было просто прикрепить его к моему результирующему HTML-коду при разборе. Однако это оказалось сложнее, чем я ожидал, и теперь мне интересно, есть ли лучший способ.

Есть ли какой-либо механизм/свойство с QWebPage, о котором я могу сказать: «используйте этот URL-адрес для относительных путей»? Или, может быть, кто-то может предложить лучший способ выполнить то, что я хочу?

Спасибо!


person Addy    schedule 26.07.2014    source источник
comment
Из вопроса непонятно, почему относительные пути не разрешаются. Предоставьте пример кода, который иллюстрирует проблему.   -  person MrEricSir    schedule 27.07.2014
comment
Не могли бы вы попробовать вызвать QDir::setCurrent() в папку вашего файла .html? Возможно, это может помочь разрешить относительные пути. Хотя я не уверен.   -  person ch0kee    schedule 27.07.2014
comment
@MrEricSir Я использую QNetworkManager (и др.), чтобы получить HTML-код нужной мне страницы, но на самом деле я показываю не тот HTML-код. Я делаю некоторый синтаксический анализ/обработку/манипулирование и генерирую свой собственный HTML. Затем я просто вызываю QWebView::setHtml.   -  person Addy    schedule 27.07.2014
comment
@ ch0kee Я не уверен, что изображения когда-либо действительно загружались из моего первоначального QNetworkRequest. Интересно, есть ли способ получить изображения в одном QNetworkReply, а затем я мог бы просто обработать MIME-части ответа... хм...   -  person Addy    schedule 27.07.2014


Ответы (1)