June 11, 2012

vahid vahid
Lab Rat
12 posts

به دست آوردن محتوای یو ارال

 

سلام

من میخواستم که سورس یک صفحه وب رو تو یه رشته داشته باشم
این کدو نوشتم ولی کار نمیکنه
heder

  1. #include <QObject>
  2. #include <QNetworkReply>
  3. #include <QNetworkAccessManager>
  4. #include <QByteArray>
  5. class WebAccessor : public QObject
  6. {
  7.     Q_OBJECT
  8. public:
  9.     WebAccessor();
  10.     void fetch(const QString &url);
  11.     QNetworkAccessManager *netManager_;
  12.     QString pageData_;
  13.     void get();
  14. public slots:
  15.     void replyFinished(QNetworkReply *reply);
  16. };

cpp:

  1. #include "webaccessor.h"
  2.  
  3. WebAccessor::WebAccessor(){
  4.     netManager_ = new QNetworkAccessManager(this);
  5.     connect(netManager_, SIGNAL(finished(QNetworkReply *)),
  6.           this, SLOT(replyFinished(QNetworkReply *)));
  7.  
  8. }
  9.  
  10. void WebAccessor::fetch(const QString &url){
  11.      netManager_->get(QNetworkRequest(QUrl(url)));
  12. }
  13.  
  14. void WebAccessor::replyFinished(QNetworkReply *pReply){
  15.     qDebug()<<"finished";
  16.     QByteArray data = pReply->readAll();
  17.     pageData_ = QString(data);
  18. }
  19. void WebAccessor::get(){
  20.  
  21.    qDebug()<<pageData_;
  22.  
  23. }

نمی دونم مشکلش از کجاست
چه راه دیگه ای هست که بشه سورس یه صفحه رو گرفت

2 replies

June 11, 2012

Mahdi Mahdi
Lab Rat
121 posts

سلام

  1. void Widget::on_pushButton_clicked()
  2. {
  3.     QNetworkAccessManager *manager = new QNetworkAccessManager(this);
  4.     connect(manager, SIGNAL(finished(QNetworkReply*)),
  5.             this, SLOT(replyFinished(QNetworkReply*)));
  6.     manager->get(QNetworkRequest(QUrl("http://qt.nokia.com")));
  7. }
  8.  
  9. void Widget::replyFinished(QNetworkReply *e)
  10. {
  11.     textEdit->setPlainText(e->readAll());
  12. }

 Signature 

QtSDK 1.2 + MinGW + Desktop !

June 16, 2012

vahid vahid
Lab Rat
12 posts

آقا ممنون
دستت درد نکنه

 
  ‹‹ کو‌ئری      خواندن و نوشت در tableView ››

You must log in to post a reply. Not a member yet? Register here!