Ну и там, куда он редиректит, может быть любой другой код: 200, 404, иди даже еще один редирект. Вот как раз тут если ты не авторизован, то получаешь два редиректа, плюс одну страницу в итоге.
О чем ты, котёночек? =) Что там творится в твоей головёнке? Редирект редиректит на другой урл. Обычный урл. Там может быть что угодно. Даже могут быть обнаженные женщины (200), могут не быть обнаженные женщины (404), или быть еще один редирект (рекурсия).
Делаю опыт. Создаю страницу, которая меня перенаправляет на страницу 200. Захожу на нее, что вижу в браузере? 302, затем 200. Следовательно мы получили в ответе статус 302, и перешли на другую страницу, которая вернула статус 200. Обе эти страницы остались в консольке. Теперь захожу на страницу, которую указал ТС. В консольке печатается всего одна страница и у нее статус 200. Какой там был редирект, я не пойму?
Код (Text): Request headers: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Encoding:gzip,deflate Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4 Cache-Control:max-age=0 Connection:keep-alive Cookie:__lc.visitor_id.1315762=S1412423195.84a248ad4b; httpref=http%3A%2F%2Fphp.ru%2Fforum%2Fviewtopic.php%3Ff%3D13%26t%3D50279; PHPSESSID=4a47ellq0rtjrtfue8tejdjgo3; visid_incap_190803=sJlkWHMyTXSu/oy4SwVG0BfeL1QAAAAAQUIPAAAAAABT+OTCiAXcsDdrf0klvq/Q; incap_ses_128_190803=zxPRUbBpRmaqr5hSpsDGAZPiMlQAAAAAbdl7lKg5PH0mozFNce4lIQ==; _ga=GA1.2.1719594469.1412423193; _ym_visorc_15537415=w; lc_window_state=minimized; _gat=1; activity=0|-1 Host:panteon-finance.com Referer:http://php.ru/forum/viewtopic.php?f=13&t=50279 User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36 Response headers: Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Connection:Keep-Alive Content-Encoding:gzip Content-Type:text/html; charset=utf-8 Date:Mon, 06 Oct 2014 18:53:17 GMT Expires:Thu, 19 Nov 1981 08:52:00 GMT Keep-Alive:timeout=60, max=22 Pragma:no-cache Server:Apache Transfer-Encoding:chunked X-CDN:Incapsula X-Iinfo:5-8176966-8159537 PNNN RT(1412621595475 495) q(0 0 0 -1) r(1 1) U10000 X-Powered-By:PHP/5.3.28
там вчера мне выпадала авторизация. а сегодня там таблица. сегодня я редиректа не вижу. но вчера видел. такой вот я.
Он закрывается на обновление данныхх каждый день и с вечера начинает быть доступным... Я так понимаю, никак нельзя с хттпс работать?
Проблема такая. Спарсить содержимое страницы. При подключении через cURL - пустой результат. При file_get_contents() - ошибка. Мне нужно просто получить html-содержимое, чтобы выцарапать значения из таблицы. Это моя проблема.
У тебя проблемы так как там стоит http://www.incapsula.com/ Все дело в куке incap_ses_282_190803. Если ее нет то ты не получишь необходимую страницу.
А можете подсказать (написать кратенько) curl с получением этой куки? И что с ней делать, как только получу?
Не, написать не могу у меня своих дел хватает, а здесь думаю разбираться придется. Эту систему от ддоса наверно не лохи делали возиться придется. Я дал направление думай. Думать - это основная деятельность программиста.
Если судить по вашему ответу, то получается: 1) мне нужно подключиться к этой странице, получив печеньку 2) снова подключиться к странице, используя эту печеньку. Так? Или я вообще Вас неправильно понял?
вот такой тряпкой отвечает сервак на запросы. он не учитывает значения кук которыми обменивается сервер и клиент ибо ориентируется на модификацию этих кук средствами JS на стороне клиента. куки там чуть ли не каждые пять секунд меняются. Код (Text): '<html> <head> <META NAME="robots" CONTENT="noindex,nofollow"> <script> (function(){function getSessionCookies(){cookieArray=new Array();var cName=/^\\s?incap_ses_/;var c=document.cookie.split(";");for(var i=0;i<c.length;i++){key=c[i].substr(0,c[i].indexOf("="));value=c[i].substr(c[i].indexOf("=")+1,c[i].length);if(cName.test(key)){cookieArray[cookieArray.length]=value}}return cookieArray}function setIncapCookie(vArray){try{cookies=getSessionCookies();digests=new Array(cookies.length);for(var i=0;i<cookies.length;i++){digests[i]=simpleDigest((vArray)+cookies[i])}res=vArray+",digest="+(digests.join())}catch(e){res=vArray+",digest="+(encodeURIComponent(e.toString()))}createCookie("___utmvc",res,20)}function simpleDigest(mystr){var res=0;for(var i=0;i<mystr.length;i++){res+=mystr.charCodeAt(i)}return res}function createCookie(name,value,seconds){if(seconds){var date=new Date();date.setTime(date.getTime()+(seconds*1000));var expires="; expires="+date.toGMTString()}else{var expires=""}document.cookie=name+"="+value+expires+"; path=/"}function test(o){var res="";var vArray=new Array();for(test in o){switch(o[test]){case"exists":try{vArray[vArray.length]=encodeURIComponent(test+"="+typeof(eval(test)))}catch(e){vArray[vArray.length]=encodeURIComponent(test+"="+e)}break;case"value":try{vArray[vArray.length]=encodeURIComponent(test+"="+eval(test).toString())}catch(e){vArray[vArray.length]=encodeURIComponent(test+"="+e)}break;case"plugins":try{p=navigator.plugins;pres="";for(a in p){pres+=(p[a]["description"]+" ").substring(0,20)}vArray[vArray.length]=encodeURIComponent("plugins="+pres)}catch(e){vArray[vArray.length]=encodeURIComponent("plugins="+e)}break;case"plugin":try{a=navigator.plugins;for(i in a){f=a[i]["filename"].split(".");if(f.length==2){vArray[vArray.length]=encodeURIComponent("plugin="+f[1]);break}}}catch(e){vArray[vArray.length]=encodeURIComponent("plugin="+e)}break}}vArray=vArray.join();return vArray}var o={navigator:"exists","navigator.vendor":"value",opera:"exists",ActiveXObject:"exists","navigator.appName":"value",platform:"plugin",webkitURL:"exists","navigator.plugins.length==0":"value"};try{setIncapCookie(test(o));document.createElement("img").src="/_Incapsula_Resource?SWKMTFSR=1&e="+Math.random()}catch(e){img=document.createElement("img");img.src="/_Incapsula_Resource?SWKMTFSR=1&e="+e}})(); </script> <script> (function() { var z="";var b="7472797B766172207868723B76617220743D6E6577204461746528292E67657454696D6528293B766172207374617475733D227374617274223B7661722074696D696E673D6E65772041727261792833293B77696E646F772E6F6E756E6C6F61643D66756E6374696F6E28297B74696D696E675B325D3D22723A222B286E6577204461746528292E67657454696D6528292D74293B646F63756D656E742E637265617465456C656D656E742822696D6722292E7372633D222F5F496E63617073756C615F5265736F757263653F4553324C555243543D363726743D373826643D222B656E636F6465555249436F6D706F6E656E74287374617475732B222028222B74696D696E672E6A6F696E28292B222922297D3B69662877696E646F772E584D4C4874747052657175657374297B7868723D6E657720584D4C48747470526571756573747D656C73657B7868723D6E657720416374697665584F626A65637428224D6963726F736F66742E584D4C4854545022297D7868722E6F6E726561647973746174656368616E67653D66756E6374696F6E28297B737769746368287868722E72656164795374617465297B6361736520303A7374617475733D6E6577204461746528292E67657454696D6528292D742B223A2072657175657374206E6F7420696E697469616C697A656420223B627265616B3B6361736520313A7374617475733D6E6577204461746528292E67657454696D6528292D742B223A2073657276657220636F6E6E656374696F6E2065737461626C6973686564223B627265616B3B6361736520323A7374617475733D6E6577204461746528292E67657454696D6528292D742B223A2072657175657374207265636569766564223B627265616B3B6361736520333A7374617475733D6E6577204461746528292E67657454696D6528292D742B223A2070726F63657373696E672072657175657374223B627265616B3B6361736520343A7374617475733D22636F6D706C657465223B74696D696E675B315D3D22633A222B286E6577204461746528292E67657454696D6528292D74293B6966287868722E7374617475733D3D323030297B706172656E742E6C6F636174696F6E2E72656C6F616428297D627265616B7D7D3B74696D696E675B305D3D22733A222B286E6577204461746528292E67657454696D6528292D74293B7868722E6F70656E2822474554222C222F5F496E63617073756C615F5265736F757263653F535748414E45444C3D343230313536363631393131363932363736342C31313731303737313932323637393738353831312C31303935363933383336313232383338303630302C363835313637222C66616C7365293B7868722E73656E64286E756C6C297D63617463682863297B7374617475732B3D6E6577204461746528292E67657454696D6528292D742B2220696E6361705F6578633A20222B633B646F63756D656E742E637265617465456C656D656E742822696D6722292E7372633D222F5F496E63617073756C615F5265736F757263653F4553324C555243543D363726743D373826643D222B656E636F6465555249436F6D706F6E656E74287374617475732B222028222B74696D696E672E6A6F696E28292B222922297D3B";for (var i=0;i<b.length;i+=2){z=z+parseInt(b.substring(i, i+2), 16)+",";}z = z.substring(0,z.length-1); eval(eval(\'String.fromCharCode(\'+z+\')\'));})(); </script></head> <body> <iframe style="display:none;visibility:hidden;" src="//content.incapsula.com/jsTest.html" id="gaIframe"></iframe> </body></html>
ну почему же... мне когда-то давно понадобилось цеплять страницы которые тоже куками динамически защищались. я заморочился написать реализацию браузера на пхп с поддержкой выполнения кода жс. года за полтора регулярных заплаток я понял что это все херня и написал расширение для хрома которое от имени браузера ходит по сайту. а браузер в свою очередь неплохо выполняет жс и как следствие неплохо качает нужные мне данные. в вашем случае возможно тоже можно написать расширение на десяток строк, которое будет скачивать код страницы и отправлять его на ваш парсер.
Да вряд ли есть... Думаю, они бы протрубили на весь сайт, было бы у них апишка... Хотя, кто знает.... Может и есть............ Надо посмотреть... Добавлено спустя 14 минут 38 секунд: Написал в поддержку..... На сайте не нашел ничего, связанное с аббревиатурой api...