Bestimmten Inhalt aus HTML-Datei (URL) auslesen



  • Funktioniert leider immer noch nicht. Der Konstruktor sieht nun so aus:

    FileDownloader::FileDownloader(QUrl imageUrl, QObject *parent) :
        QObject(parent)
    {
        connect(&m_WebCtrl, SIGNAL (finished(QNetworkReply*)), SLOT (fileDownloaded(QNetworkReply*)));
    
        QNetworkRequest request(imageUrl);
        request.setSslConfiguration(QSslConfiguration::defaultConfiguration());
        m_WebCtrl.get(request);
    }
    

    Es sind 2 libeay32.dll-Dateien und zwei ssleay32.dll-Dateien vorhanden, und zwar :

    Qt\Qt5.12.0\Tools\QtCreator\bin\libeay32.dll
    Qt\Qt5.12.0\Tools\mingw730_64\opt\bin\libeay32.dll

    und

    Qt\Qt5.12.0\Tools\QtCreator\bin\ssleay32.dll
    Qt\Qt5.12.0\Tools\mingw730_64\opt\bin\ssleay32.dll



  • Erhältst du denn einen Fehler?

    Ansonsten verbinde dich mit dem sslErrors-SLOT oder werte mal das Rückgabe-Objekt von get aus -> QNetworkReply z.B. dessen error()-Funktion bzw. verbinde es mit dem errorOccurred bzw. sslErrors-SLOT), s.a. 2. Beispiel unter "Detailed Description" in QNetworkAccessManager.



  • Nicht direkt eine Fehlermeldung, aber ich sehe gerade dass unter "Ausgabe der Anwendung" folgendes steht:

    QNetworkReplyHttpImplPrivate::_q_startOperation was called more than once QUrl("https://previews.123rf.com/images/lekchangply/lekchangply1307/lekchangply130700018/21059386-group-of-pencel-in-box-isolate-on-white-background.jpg")
    
    qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
    
    QPixmap::scaleWidth: Pixmap is a null pixmap
    


  • Hast du denn die beiden DLLs in deinen Ausgabeordner (neben deine EXE) kopiert (oder alternativ liegen diese in einem der PATH-Ordner)?
    Beachte auch passende Plattform: x86 bzw. x64.

    Habe dazu zwei (englische) Artikel gefunden:



  • Endlich! Nachdem ich die beiden Datein in den Ordner kopiert habe, funktioniert es nun auch mit HTTPS!

    Th69, ohne Dich hätte ich es in hundert Jahren nicht geschafft.

    Aber ist es denn normal bzw. ursprünglich von Qt so gewollt, diese Dateien hineinkopieren zu müssen? In der Qt-Dokumentation habe ich nichts dazu gefunden. So wie ich das aus deinem Link verstehe, hat das irgendwas mit OpenSSL zu tun.



  • Das ist wohl eine Lizenzgeschichte, daß diese Funktionalität nicht direkt in Qt vorhanden ist, s.a. Wiki dazu: OpenSLL.



  • Danke nochmal 🙂

    Dann werd ich als nächstes versuchen einen Text rauszufiltern... Aber heute ist erstmal Feierabend. Hatte schon genug Stress mit dem Tierarzt und meiner Katze, die hat nämlich ein WehWeh.

    Th69, Programmierst Du eigentlich beruflich oder eher Hobby?



  • Professioneller Hobby-Entwickler 😉



  • Da hast Du Dir ein schönes Hobby gesucht. Noch schöner ist, wenn man es sogar kann^^
    Bei mir hakt es noch hier und da, wie Du merkst.

    Darf ich erfahren aus welcher Ecke Deutschlands Du kommst?



  • Aus der Stadt, die nicht existiert. 🙂



  • Nice nice, dann müsstest Du ja hier um die Ecke wohnen 😉


Anmelden zum Antworten