Название: Получение информации с сайта Отправлено: Pixel от Май 18, 2013, 19:43 нужно тупо считать все что на сайте написано. вроде как все правильно делаю, но почему на всех сайтах выдает либо ошибку чтения либо вообще ничего никак непойму.
mainWindow.h: Код: #ifndef MAINWINDOW_H mainWindow.cpp: Код: #include <mainWindow.h> Название: Re: Получение информации с сайта Отправлено: kambala от Май 18, 2013, 20:43 попробуй connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(searshFinished(QNetworkReply*))); поставить перед manager->get(QNetworkRequest(QUrl("http://www.youtube.com/"))); и не плоди тонну QNetworkAccessManager'ов — у тебя на каждое нажатие кнопки создается новый объект.
и повыводи ответ вне зависимости от наличия ошибки. Название: Re: Получение информации с сайта Отправлено: Pixel от Май 18, 2013, 20:56 все попробовал. безрезультатно
Название: Re: Получение информации с сайта Отправлено: thechicho от Май 19, 2013, 09:36 http://www.prog.org.ru/topic_24772_0.html (http://www.prog.org.ru/topic_24772_0.html)
в этой теме выкладывал функции, которые я юзаю для работы с сетью. они могут решить твою проблему. вообще подумай нужен ли тебе c++/qt для твоей задачи. это мозгоделание еще то, пока не поймешь как оно работает. Название: Re: Получение информации с сайта Отправлено: keekdown от Май 19, 2013, 12:07 Моё мнение что ошибка в
Цитировать connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(searshFinished(QNetworkReply*))); проверь на null.Я не работал с сетью,просто такое мнениеНазвание: Re: Получение информации с сайта Отправлено: kambala от Май 19, 2013, 14:31 интересно что тут может быть null. если менеджер, то программа бы вылетела при вызове метода гет; если коннект вернет фолс, то об этом сообщится в выводе приложения.
код у тебя правильный, это что-то ютьюб выделывается. потесть на другом сайте. Название: Re: Получение информации с сайта Отправлено: Pixel от Май 19, 2013, 15:36 тестил очень многие сайты. ответил только google.com и то вывел нечто невнятное
Название: Re: Получение информации с сайта Отправлено: alex312 от Май 19, 2013, 17:05 Примерно так должен выглядеть запрос, что б ему отвечали приличные сайты
Код
Название: Re: Получение информации с сайта Отправлено: Serr500 от Май 19, 2013, 17:12 Вот простенький работающий проект. Ошибок не выдаёт.
Название: Re: Получение информации с сайта Отправлено: thechicho от Май 19, 2013, 20:59 request.setRawHeader("Accept-Encoding", "deflate");
а чем ответ разархивировать будешь, если в deflate придет? request.setRawHeader("Host", "XXX.uz.gov.ua"); request.setRawHeader("Pragma", "no-cache"); request.setRawHeader("Content-Length", "0"); нафик не надо. для пост запроса Content-Length автоматически формируется request.setRawHeader("Content-Type", "application/x-www-form-urlencoded"); для пост-запроса. для простой формы. для гет-запроса не нужен(в большинстве случаев). теоретически может вызвать проблемы Название: Re: Получение информации с сайта Отправлено: Pixel от Май 19, 2013, 23:38 thechicho, напиши плз как надо тогда? и если не c++/qt что тогда? плагин для браузера? придется же тонну литературы перечитать.
Название: Re: Получение информации с сайта Отправлено: thechicho от Май 20, 2013, 09:31 а чо за прогу ты хочешь на youtube написать? накрутчик?
Название: Re: Получение информации с сайта Отправлено: Pixel от Май 20, 2013, 17:28 ютюб был пример. мне нужно считывать данные из таблицы на сайте. и далее проводить с ними операции. с сишником и qt проблем никаких нету, но вот как именно считать эти данные я не знаю
Название: Re: Получение информации с сайта Отправлено: alex312 от Май 20, 2013, 17:54 ютюб был пример. мне нужно считывать данные из таблицы на сайте. и далее проводить с ними операции. с сишником и qt проблем никаких нету, но вот как именно считать эти данные я не знаю В своем любимом браузере открываешь расширение для разработчиков и смотришь какие запросы отправляются, какие ответы приходят. Потом аккуратненько переносиш все в Qt/c++. Название: Re: Получение информации с сайта Отправлено: thechicho от Май 20, 2013, 18:11 //с сишником и qt проблем никаких нету, но вот как именно считать эти данные я не знаю
в смысле не знаешь? ты же сам писал QString data = QString::fromUtf8(networkReply->readAll()); Название: Re: Получение информации с сайта Отправлено: Pixel от Май 20, 2013, 18:23 thechicho, ну тему то не просто так создал)) смотри сабж
alex312, а вот с этого места можно по подробней?) на примере хрома. ну инструменты открыл дальше как посмотреть запросы и как скопировать в qt?) Название: Re: Получение информации с сайта Отправлено: thechicho от Май 20, 2013, 18:37 чо смотри сабж? чо ты хочешь вообще я не пойму.
тебе дали примеры кода. парси сайт, парси таблицу. в чем проблема? Название: Re: Получение информации с сайта Отправлено: alex312 от Май 20, 2013, 18:38 alex312, а вот с этого места можно по подробней?) на примере хрома. ну инструменты открыл дальше как посмотреть запросы и как скопировать в qt?) Хром не установлен. Прилагаю картинку для Огнелиса. В Qt надо копировать с умом :DНазвание: Re: Получение информации с сайта Отправлено: Pixel от Май 20, 2013, 19:28 Вобщем из всего предложенного заработал только пример, сделанный Serr500. Спасибо ему за то что не поленился написать пример =)
alex312, кажется понял) Название: Re: Получение информации с сайта Отправлено: thechicho от Май 20, 2013, 20:16 почти сутки прошли и до тебя только сейчас дошло, что тебе вчера еще выложили рабочий пример?
или ты только сейчас "не поленился" его скачать и проверить? *FACEPALM* |