ciph3r
چهارشنبه 29 مرداد 1393, 17:24 عصر
سلام دوستان
یک سوال کوچک
من می خواهم یک وب کراولر بنویسم
حالا با استفاده از QNetworkAccessManager در خواست خودم رو با استفاده از QNetworkRequest and QNetworkReply فرستادم و بعد کانکت کردم به تابع فینیش که رسپانس رو بگیرم
حالا می خواهم سورس کد اچ تی ام ال آمده رو چک کنم و محتویات داخل تگ Href رو بکشم بیرون
نمی خواهم از ریگولار استفاده کنم
کد زیر باعث میشه برنامه کرش کنه ولی دلیلشو نمیدونم
آخ از دست این دیباگر کیوت فرمورک
کد :
void crawler::finished ( QNetworkReply * reply ){
QString source(reply->readAll());
QWebElement element;
QWebElementCollection collection;
page->mainFrame()->setHtml(source);
page->mainFrame()->documentElement();
collection = page->mainFrame()->findAllElements("a");
foreach(element, collection){
QUrl currenturl;
currenturl = QUrl(element.attribute("href"));
ui->plainTextEdit->setPlainText(element.toPlainText()); } }
یک سوال کوچک
من می خواهم یک وب کراولر بنویسم
حالا با استفاده از QNetworkAccessManager در خواست خودم رو با استفاده از QNetworkRequest and QNetworkReply فرستادم و بعد کانکت کردم به تابع فینیش که رسپانس رو بگیرم
حالا می خواهم سورس کد اچ تی ام ال آمده رو چک کنم و محتویات داخل تگ Href رو بکشم بیرون
نمی خواهم از ریگولار استفاده کنم
کد زیر باعث میشه برنامه کرش کنه ولی دلیلشو نمیدونم
آخ از دست این دیباگر کیوت فرمورک
کد :
void crawler::finished ( QNetworkReply * reply ){
QString source(reply->readAll());
QWebElement element;
QWebElementCollection collection;
page->mainFrame()->setHtml(source);
page->mainFrame()->documentElement();
collection = page->mainFrame()->findAllElements("a");
foreach(element, collection){
QUrl currenturl;
currenturl = QUrl(element.attribute("href"));
ui->plainTextEdit->setPlainText(element.toPlainText()); } }