版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dyingstraw/article/details/79100150
QT get 获取数据
QString str_url("http://www.weather.com.cn/data/sk/");
if (QString(this->lineEdit_no->text()) == "")
{
str_url = QString("http://www.weather.com.cn/data/sk/") + QString("101010100.html");
}
else
{
str_url = QString("http://www.weather.com.cn/data/sk/") + QString(this->lineEdit_no->text()) + QString(".html");
}
qDebug() << "ur=" << str_url;
qDebug() << str;
this->label->setText(str);
QNetworkAccessManager *netWork = new QNetworkAccessManager(this->tab_home);
QUrl url("");
QNetworkRequest *re = new QNetworkRequest();
re->setUrl(str_url);
QNetworkReply *reply= netWork->get(*re);
QObject::connect(reply, &QNetworkReply::finished, [this,reply]()
{
QJsonObject json0;
json0.insert("da", "100");
json0.insert("xiao", "0.01");
QJsonDocument doc;
doc.setObject(json0);
QByteArray json_array = doc.toJson(QJsonDocument::Compact);
QString json = reply->readAll();
//this->textBrowser->setText(json);
QJsonParseError json_error;
QJsonDocument d =QJsonDocument::fromJson(json.toUtf8(),&json_error);
qDebug() << "json:"<<json;
if (json_error.error == QJsonParseError::NoError)
{
qDebug() << "No errors";
if (d.isObject())
{
qDebug() << "d is objrcts";
QJsonObject sub0 = d.object();
if ( sub0.contains("weatherinfo"))
{
qDebug() << sub0.value("weatherinfo").toVariant();
QJsonObject sub1 = sub0.value("weatherinfo").toObject();
//qDebug() << sub1.take("city").toString();
this->lineEdit_age->setText(sub1.take("WD").toString());
this->lineEdit_name->setText((sub1.take("city").toString()));
qDebug() << "city" << sub1.value("city").toString();
this->lineEdit_company->setText(sub1.take("SD").toString());
this->lineEdit_sex->setText(sub1.take("rain").toString());
this->textBrowser->setText(sub1.take("njd").toString());
}
}
}