Russian Qt Forum
Ноябрь 23, 2024, 22:57 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: qwebview, proxy и яндекс капча  (Прочитано 14201 раз)
majatu
Гость
« : Май 28, 2011, 16:29 »

Здравствуйте, вот такая у меня проблема: при загрузке страницы яндекса или гугла через qwebview без прокси все ок, можно набрать поисковую строку, нажать найти и выйдут результаты поиска... НО, как только я делают все тоже самое через прокси, ничего не происходит (не отображается), точнее происходит: происходит, насколько я понял, 302 редирект на страницу аля http://yandex.ru/showcaptcha?retpath=..... , но qwebview эту страницу не отображает, мне же надо, чтобы отображал. Помогите граждане, в какую сторону копать?

вот код прокси

Код:
    proxy.setType(QNetworkProxy::HttpProxy);
    proxy.setHostName(QString("91.143.58.1"));
    proxy.setPort(80);
    QNetworkProxy::setApplicationProxy(proxy);

код qwebview

Код:
QObject::connect(webView, SIGNAL(linkClicked(QUrl)), this, SLOT(linkClicked(QUrl)));

webView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
webView->settings()->setAttribute(QWebSettings::JavascriptEnabled, true);
webView->settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, true);
webView->settings()->setAttribute(QWebSettings::JavascriptCanAccessClipboard, true);
webView->settings()->setAttribute(QWebSettings::XSSAuditingEnabled, false);

webView->setUrl(QUrl("http://yandex.ru/"));

ps

вот что вижу, если включить трассировку qnetworkmanager для  для сигнала finished после нажатия найти

Код:
"200" "http://suggest.yandex.ru/suggest-ya.cgi?v=3&callback=jsonp1306590595905&part=2&lr=213&yu=2835684401306590566" 
"200" "http://yandex.st/lego/_/bJFDyuRKZlHtTWcfli2PRMCTNQ4.png"
"200" "http://suggest.yandex.ru/suggest-ya.cgi?v=3&callback=jsonp1306590595906&part=22&lr=213&yu=2835684401306590566"
"200" "http://suggest.yandex.ru/suggest-ya.cgi?v=3&callback=jsonp1306590595907&part=222&lr=213&yu=2835684401306590566"
"200" "http://www.yandex.ru/?ncrnd=3342"
"200" "http://suggest.yandex.ru/suggest-ya.cgi?v=3&callback=jsonp1306590595908&part=2222&lr=213&yu=2835684401306590566"
"200" "http://clck.yandex.ru/jclck/dtype=stred/pid=0/cid=2873/path=morda_ru.not_used.p0.nah_not_shown.button_by_mouse/session=1306590595864/region=1/times=296.277.270.271/pos=4/text=2222/user_input=2222/ratio=4.4.4/rnd=1306590612363/*data=url=http%3A%2F%2Fwww.yandex.ru%2F%3Fncrnd%3D3342"
"302" "http://yandex.ru/yandsearch?text=2222&lr=213"
"200" "http://yandex.ru/showcaptcha?retpath=http://yandex.ru/yandsearch?text=2222&lr=213&t=0/1306590624/7209af804bf57fb1a38e56106e27f683&cc=1&s=edc5f8bd15d25c3f92fd7f938bd66aa4"

p.s.s
 выяснилось, что при запросе http://yandex.ru/showcaptcha?retpath=http://yandex.ru/yandsearch?text=2222&lr=213&t=0/1306590624/7209af804bf57fb1a38e56106e27f683&cc=1&s=edc5f8bd15d25c3f92fd7f938bd66aa4, возникает ошибка Operation canceled , т.е. QNetworkReply::OperationCanceledError, хотя при абсолютно такихже манипуляций с хеадерами в файрфоксе, капча отобржается. Здесь ну никак Грустный(( нужен хелп!!!! почему рвется соединение???

вот заголовки, если делать в файрфоксе

Код:
http://yandex.ru/yandsearch?text=123&lr=213

GET http://yandex.ru/yandsearch?text=123&lr=213 HTTP/1.1
Host: yandex.ru
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
DNT: 1
Proxy-Connection: keep-alive

HTTP/1.0 302 Moved Temporarily
Location: http://yandex.ru/showcaptcha?retpath=http%3A//yandex.ru/yandsearch%3Ftext%3D123%26lr%3D213&t=0/1306851427/dc4f704e3e9a4805a691829279131f82&cc=1&s=ba3ab8f421e5e06403eb655a3cf4099b
Set-Cookie: spravka=dD0xMjc1MzE1NDI3O2k9OTEuMTQzLjU4LjE7dT0xMjc1MzE1NDI3MTU0Mjk2MzU1O2g9MzIzYTJjMGQ4MGVjZGZkMGM2ZTMzNmE1ODNmZDM2Yzg=; domain=.yandex.ru; path=/; expires=Thu, 30-Jun-2011 14:17:07 GMT
X-Cache: MISS from tank.nyagan.su
Via: 1.1 tank.nyagan.su:9000 (squid/2.7.STABLE9)
Connection: close
----------------------------------------------------------
http://yandex.ru/showcaptcha?retpath=http%3A//yandex.ru/yandsearch%3Ftext%3D123%26lr%3D213&t=0/1306851427/dc4f704e3e9a4805a691829279131f82&cc=1&s=ba3ab8f421e5e06403eb655a3cf4099b

GET http://yandex.ru/showcaptcha?retpath=http%3A//yandex.ru/yandsearch%3Ftext%3D123%26lr%3D213&t=0/1306851427/dc4f704e3e9a4805a691829279131f82&cc=1&s=ba3ab8f421e5e06403eb655a3cf4099b HTTP/1.1
Host: yandex.ru
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
DNT: 1
Proxy-Connection: keep-alive
Cookie: spravka=dD0xMjc1MzE1NDI3O2k9OTEuMTQzLjU4LjE7dT0xMjc1MzE1NDI3MTU0Mjk2MzU1O2g9MzIzYTJjMGQ4MGVjZGZkMGM2ZTMzNmE1ODNmZDM2Yzg=

HTTP/1.0 200 OK
Content-Length: 8706
X-Cache: MISS from tank.nyagan.su
Via: 1.1 tank.nyagan.su:9000 (squid/2.7.STABLE9)
Connection: close

вот трейс моих

Код:
request url:   QUrl( "http://yandex.ru/yandsearch?text=123&lr=213" )  
request header:  "User-Agent" "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1"
request header:  "Host" "yandex.ru"
request header:  "Accept" "text/html,application/xhtml+xml,application/xml;q=0.9,,text/plain;q=0.8,image/png,*/*;q=0.5"
request header:  "Accept-Language" "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3"
request header:  "Accept-Charset" "windows-1251,utf-8;q=0.7,*;q=0.7"
request header:  "Keep-Alive" "115"
request header:  "DNT" "1"
request header:  "Proxy-Connection" "keep-alive"
request header:  "Cache-Control" "max-age=0"

request url:   QUrl( "http://yandex.ru/showcaptcha?retpath=http://yandex.ru/yandsearch?text=123&lr=213&t=0/1306851362/a650f38e10215e8fb1e6b8d1e0d3c9d3&cc=1&s=b879fd072598a246dd734d65e62d83d1" )  
request header:  "User-Agent" "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1"
request header:  "Host" "yandex.ru"
request header:  "Accept" "text/html,application/xhtml+xml,application/xml;q=0.9,,text/plain;q=0.8,image/png,*/*;q=0.5"
request header:  "Accept-Language" "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3"
request header:  "Accept-Charset" "windows-1251,utf-8;q=0.7,*;q=0.7"
request header:  "Keep-Alive" "115"
request header:  "DNT" "1"
request header:  "Proxy-Connection" "keep-alive"
request header:  "Cache-Control" "max-age=0"
request header:  "Cookie" "spravka=dD0xMjc1MzE1MzYyO2k9OTEuMTQzLjU4LjE7dT0xMjc1MzE1MzYyMjYyNTM2MDg2O2g9MzBmMjhmZThlNjQxY2RkNzRkNTVkZTBlMmE1ZTE0MGQ="

"error string: Operation canceled"
"error url: http://yandex.ru/showcaptcha?retpath=http://yandex.ru/yandsearch?text=123&lr=213&t=0/1306851362/a650f38e10215e8fb1e6b8d1e0d3c9d3&cc=1&s=b879fd072598a246dd734d65e62d83d1"
error header:  "Content-Length" "8706"
error header:  "X-Cache" "MISS from tank.nyagan.su"
error header:  "Via" "1.1 tank.nyagan.su:9000 (squid/2.7.STABLE9)"
error header:  "Connection" "close"
« Последнее редактирование: Май 31, 2011, 18:17 от majatu » Записан
majatu
Гость
« Ответ #1 : Июль 19, 2011, 16:03 »

up

кто-нибудь знает, почему идет разрыв?
Записан
majatu
Гость
« Ответ #2 : Август 25, 2011, 12:39 »

up
Записан
majatu
Гость
« Ответ #3 : Август 30, 2011, 22:10 »

up
Записан
majatu
Гость
« Ответ #4 : Сентябрь 01, 2011, 16:31 »

up
Записан
thechicho
Гость
« Ответ #5 : Октябрь 09, 2011, 19:17 »

прокси из паблика?
попробуй с нормальными проксями
Записан
majatu
Гость
« Ответ #6 : Октябрь 16, 2011, 11:40 »

Да, прокси из паблика, в этом проблема?
Записан
thechicho
Гость
« Ответ #7 : Октябрь 19, 2011, 10:37 »

хз. проверь.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.042 секунд. Запросов: 21.