Весь смысл скачать данные за определенный период, поэтому обычные решения что были в сети не подошли (может не увидела таких и буду благодарна если кинете).
Ниже представленный код работает на двух домашних компах отлично ( мой и заказчика) и не работает на двух ВПС серверах...
Если не задавать "X-Requested-With:XMLHttpRequest" - работает везде, но этот заголовок задать необходимо т.к. сайт тогда перекидывает на главную страницу.
Ошибка в mql - 5203, а в result - 12002 - т.е. он просто идет как неверный запрос
Таймер 20 сек, за этот момент уже нашла на форме - не помогло.
Код:
string result_headers;
char post[], result[];
string pos_url="https://uk.investing.com/economic-calendar/Service/getCalendarFilteredData";
if (WebRequest("POST", pos_url, "X-Requested-With:XMLHttpRequest", NULL, timeout, post, ArraySize(post), result, result_headers) == -1){
Print("No load day "+TimeToString(_time_start)+" Error in WebRequest POST. Code = "+IntegerToString(GetLastError())+" ("+CharArrayToString(result)+"/"+result_headers+")");
return(false);}
на вид не хватает каких-то библиотек на vps
попробуйте установить Visual Studio на vps
Весь смысл скачать данные за определенный период, поэтому обычные решения что были в сети не подошли (может не увидела таких и буду благодарна если кинете).
Ниже представленный код работает на двух домашних компах отлично ( мой и заказчика) и не работает на двух ВПС серверах...
Если не задавать "X-Requested-With:XMLHttpRequest" - работает везде, но этот заголовок задать необходимо т.к. сайт тогда перекидывает на главную страницу.
Ошибка в mql - 5203, а в result - 12002 - т.е. он просто идет как неверный запрос
Таймер 20 сек, за этот момент уже нашла на форме - не помогло.
Код:
string result_headers;
char post[], result[];
string pos_url="https://uk.investing.com/economic-calendar/Service/getCalendarFilteredData";
if (WebRequest("POST", pos_url, "X-Requested-With:XMLHttpRequest", NULL, timeout, post, ArraySize(post), result, result_headers) == -1){
Print("No load day "+TimeToString(_time_start)+" Error in WebRequest POST. Code = "+IntegerToString(GetLastError())+" ("+CharArrayToString(result)+"/"+result_headers+")");
return(false);}
Галина, VPS смотрят в интернет не через прокси ?
а я бы предложил посмотреть в сторону java,либо вообще отсутствуют на впс,либо ...
провел сейчас эксперимент-включен в браузере NoScript и AdBlock, ссылка из вашего запроса не работает - редиректит сразу на главную страницу, и так как кнопка фильтра календаря у них сделана через скрипт,то она,разумеется,не работает.
есть же специальная защита от парсинга ботами-мол,у вас не включены скрипты-вы бот!
а я бы предложил посмотреть в сторону java,либо вообще отсутствуют на впс,либо ...
провел сейчас эксперимент-включен в браузере NoScript и AdBlock, ссылка из вашего запроса не работает - редиректит сразу на главную страницу, и так как кнопка фильтра календаря у них сделана через скрипт,то она,разумеется,не работает.
есть же специальная защита от парсинга ботами-мол,у вас не включены скрипты-вы бот!
В общем, на всяк случай Java обновила - не помогло. Visual Studio и у меня на компе не стоит, у заказчика думаю тем более и работает.
Прокси не вижу в свойствах обозревателя, но сайт говорит что возможно используются средства анонимности https://2ip.ru/privacy/bar/1769500_c77a1c.html
Дело в том что не главную страницу возвращает, а вообще запрос не выполняется
В браузере заходит. Увеличение таймаута не помогает
Нашла инфу, указала рефера, пока не помогло
Для ограничения XmlHttpRequest используется философия "Same Origin Policy". Она очень проста - каждый сайт в своей песочнице. Запрос можно делать только на адреса с тем же протоколом, доменом, портом, что и текущая страница.
Т.е, со страницы на адресе http://site.com нельзя сделать XmlHttpRequest на адрес https://site.com, http://site.com:81 или http://othersite.com
- www.salesforce.com
Поставьте прокси сниффер на VPS (хватит и http-шных как "burp suite" или "owasp",....).
Прокиньте через него интернет трафик.
Посмотрите что реально отправляется.
SOP ("Same Origin Policy") - ни к чему, это с другой песни.
Например, он говорит, что с страницы www.mql5.com в браузере, грубо говоря, не возможно получить данные из других сайтов не относящиеся к этому домену, порту,протоколу....
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Весь смысл скачать данные за определенный период, поэтому обычные решения что были в сети не подошли (может не увидела таких и буду благодарна если кинете).
Ниже представленный код работает на двух домашних компах отлично ( мой и заказчика) и не работает на двух ВПС серверах...
Если не задавать "X-Requested-With:XMLHttpRequest" - работает везде, но этот заголовок задать необходимо т.к. сайт тогда перекидывает на главную страницу.
Ошибка в mql - 5203, а в result - 12002 - т.е. он просто идет как неверный запрос
Таймер 20 сек, за этот момент уже нашла на форме - не помогло.
Код:
string result_headers;
char post[], result[];
string pos_url="https://uk.investing.com/economic-calendar/Service/getCalendarFilteredData";
if (WebRequest("POST", pos_url, "X-Requested-With:XMLHttpRequest", NULL, timeout, post, ArraySize(post), result, result_headers) == -1){
Print("No load day "+TimeToString(_time_start)+" Error in WebRequest POST. Code = "+IntegerToString(GetLastError())+" ("+CharArrayToString(result)+"/"+result_headers+")");
return(false);}