zoukankan      html  css  js  c++  java
  • paip.c++ qt 网页爬虫 的 网络编程 总结

    paip.c++ qt 网页爬虫 的 网络编程 总结 


    作者Attilax ,  EMAIL:1466519819@qq.com 
    来源:attilax的专栏
    地址:http://blog.csdn.net/attilax




    1.项目添加网络模块。
    --------------
    工程名为“http”,然后选中QtNetwork模块,最后Base class选择QWidget 。注意:如果新建工程时没有添加Qt Network模块,那么就要手动在工程文件.pro中添加代码


    QT += network  
    表明我们使用了网络模块。


    2.添加net类:必须幺继承QObject.贝儿.不能关联事件..好像也能直接写的个头文件黑头了..
    -----------
    ---atiNet.h--------
    #ifndef ATINET_H
    #define ATINET_H


    #include <QObject>
    #include <QNetworkAccessManager>
    #include <QNetworkRequest>
    #include <QNetworkReply>
    #include <QtCore>
    #include <iostream>
    using namespace std ;


    class atiNet : public QObject
    {
        Q_OBJECT
    public:
        explicit atiNet();
         static QString  getHtml(QString url);


    signals:


    public slots:


    };


    #endif // ATINET_H




    ---atinet.cpp-------
    #include "atinet.h"


    atiNet::atiNet()
    {
    }


     QString  atiNet::getHtml(QString url)
       {
           QNetworkAccessManager *manager = new QNetworkAccessManager();
           QNetworkReply *reply = manager->get(QNetworkRequest(QUrl(url)));
           QByteArray responseData;
           QEventLoop eventLoop;
           connect(manager, SIGNAL(finished(QNetworkReply*)), &eventLoop, SLOT(quit()));
           eventLoop.exec();       //block until finish
           responseData = reply->readAll();
           return QString(responseData);
       }




       
     3.调用:
     ------------
     int main(int argc, char *argv[])
    {
      QCoreApplication a(argc, argv);


     //
        QString url="http://www.oschina.net/code/snippet_28714_18932";
        QString html= atiNet::getHtml(url);
        qDebug() <<html;
     //   printf(html);
         return a.exec();
    }
     
     
     
     
    参考:
    Qt网络之HTTP编程(1) - 51CTO.COM.htm
    QTE下通过Http协议以同步方式与Web服务器通信的实现 - CityFantom的专栏 - 博客频道 - CSDN.NET.htm
    qt同步方式进行http请求   coolEx.htm
    Qtopia2 编译过程错误总结与解决方法 - yimiyangguang1314的专栏 - 博客频道 - CSDN.NET.htm
    Qt网络编程之QNetworkAccessManager - chenlong12580的专栏 - 博客频道 - CSDN.NET.htm
    QT获取网页内容 - 开源中国社区.htm




     
  • 相关阅读:
    XAMPP重要文件目录及配置
    xmlhttp
    深入php内核,从底层c语言剖析php实现原理
    史上最全的MSSQL复习笔记
    LNMP状态管理命令
    SSL证书更换(具体路径可参考iRedMail.tips文件)及邮件服务器架构
    (转)CentOS 7 —— /etc/rc.local 开机不执行
    从CMDB查询云平台组件或者IP简单脚本
    将电脑文件复制到vm虚拟机中,然后安装步骤
    Linux-vmware tools安装与cdrom挂载(转)
  • 原文地址:https://www.cnblogs.com/attilax/p/15199541.html
Copyright © 2011-2022 走看看