@fuckyep said in Как обработать аудио файл?:
В Post запросе сервер возвращает вот такой код
Как его сохранить в аудио файл на пк?
3dec0633-e9d5-448a-b0dd-c61063be9d1c-изображение.png
@f0cus Ладно вот говнокод решение. Но оно писанно на коленке и вот прям счас, сырое и не вылизанное.
Но в нем есть возможность проверить по таймеру, по изменению урл и можно даже циклы использовать например цать раз не прошло отбой. Как это реализовать в кубиках я не представляю. Поэтому вот
_if(VAR_WAS_ERROR, function () {
cloudflareCheck = {}
timestamp = _parse_date(Date.now(), "auto").getTime()
url()!
VAR_CURRENT_URL = _result()
_cache_get_all("*")!
var cache_list = JSON.parse(_result())
cloudflareCheck.isCloud = false;
if (cache_list[0].hasOwnProperty("status")) {
if (cache_list[0].status == 503) {
cloudflareCheck.status = 503
cloudflareCheck.url = 1
cloudflareCheck.isCloud = true
cloudflareCheck.currentUrlStart = VAR_CURRENT_URL
}
}
cache_list = undefined;
// проверка на cloudflare если есть ждем и снова проверяем
_if(cloudflareCheck.hasOwnProperty('status') && cloudflareCheck.hasOwnProperty('url') && cloudflareCheck.isCloud == true, function () {
timestampCheck = _parse_date(Date.now(), "auto").getTime() + 5000;
currentUrlStart = cloudflareCheck.currentUrlStart
cloudflareCheck = true;
_do(function () {
cycle = _iterator() - 1
BREAK_CONDITION = cloudflareCheck
if (!BREAK_CONDITION) _break();
_if(timestampCheck > _parse_date(Date.now(), "auto").getTime(), function () {
sleep(1000)!
url()!
VAR_CURRENT_URL = _result()
// проверка по урл
if(VAR_CURRENT_URL != currentUrlStart) {
log(VAR_CURRENT_URL)
}
})!
if (timestampCheck <= _parse_date(Date.now(), "auto").getTime()) {
cloudflareCheck = false;
}
})!
})!
})!
log(timestamp)
log(cycle)
log(timestampCheck)
Это не решение рекапча ой hcaptcha cloudflare это просто обход ошибки в браузере баса. К сожалению без обертки игнорить ошибки это оставит след. поэтому я спросил про возможность обхода без ошибок. Будут вопросы спрашивайте. Да это вот все в выполнить код, после появления ошибки при загрузки страницы где точно известно появление cloudflare
@tet-vivi )) Этот модуль.. использует клиент и как он работает я знаю. И даже знаю его сырцы, адаптировал его @UserTrue его благодарите, а в модуль засунул @GhostZ. Этот модуль использует клиента, а я хочу только браузер=) и да этот код решает, но будет в итоге ошибка. Как незагруженная страница. Хотя она по факту есть. В обертке самописной и этого нет, но это я на общее не дам.
upd Я не почти не использовал браузер баса, сейчас вот пытаюсь покорить его) Даже несмотря на все .. недочеты которые возникают у него движок наконец посвежее. И не надо заниматься колдунством
upd 2 именно этот код на самом деле ничо не решает. Ну в смысле вот это все eval() и все такое. Он просто дает браузеру самому время на все это, так просто бас не проходит и появляется ошибка загрузки страницы.
@f0cus В действии загрузки страницы уберите песочные часы, чтобы БАС не ждал полной загрузки страницы, в случае с cloudfare это вызывает ошибку. Дальше действие "Ожидать элемент" с селектором на элемент, который есть только на загруженной странице. Всё, проблема решена!
@DoctorKrolic
Это действие пойдет только если вы знаете куда идете и знать элемент, а я хочу сделать универсальную обертку, что бы не заморачиваться под каждый сайт.
Но как способ думаю рабочий спасибо.
@f0cus said in Как браузером обойти cloudflate ?:
@f0cus Ладно вот
говнокодрешение. Но оно писанно на коленке и вот прям счас, сырое и не вылизанное.
Но в нем есть возможность проверить по таймеру, по изменению урл и можно даже циклы использовать например цать раз не прошло отбой. Как это реализовать в кубиках я не представляю. Поэтому вот_if(VAR_WAS_ERROR, function () { cloudflareCheck = {} timestamp = _parse_date(Date.now(), "auto").getTime() url()! VAR_CURRENT_URL = _result() _cache_get_all("*")! var cache_list = JSON.parse(_result()) cloudflareCheck.isCloud = false; if (cache_list[0].hasOwnProperty("status")) { if (cache_list[0].status == 503) { cloudflareCheck.status = 503 cloudflareCheck.url = 1 cloudflareCheck.isCloud = true cloudflareCheck.currentUrlStart = VAR_CURRENT_URL } } cache_list = undefined; // проверка на cloudflare если есть ждем и снова проверяем _if(cloudflareCheck.hasOwnProperty('status') && cloudflareCheck.hasOwnProperty('url') && cloudflareCheck.isCloud == true, function () { timestampCheck = _parse_date(Date.now(), "auto").getTime() + 5000; currentUrlStart = cloudflareCheck.currentUrlStart cloudflareCheck = true; _do(function () { cycle = _iterator() - 1 BREAK_CONDITION = cloudflareCheck if (!BREAK_CONDITION) _break(); _if(timestampCheck > _parse_date(Date.now(), "auto").getTime(), function () { sleep(1000)! url()! VAR_CURRENT_URL = _result() // проверка по урл if(VAR_CURRENT_URL != currentUrlStart) { log(VAR_CURRENT_URL) } })! if (timestampCheck <= _parse_date(Date.now(), "auto").getTime()) { cloudflareCheck = false; } })! })! })! log(timestamp) log(cycle) log(timestampCheck)Это не решение рекапча ой hcaptcha cloudflare это просто обход ошибки в браузере баса. К сожалению без обертки игнорить ошибки это оставит след. поэтому я спросил про возможность обхода без ошибок. Будут вопросы спрашивайте. Да это вот все в выполнить код, после появления ошибки при загрузки страницы где точно известно появление cloudflare
А чем вам не угодил вариант с отключением ожидания полной загрузки страницы?
@support said in Как победить cloudflare?:
@paini
Здравствуйте!Выставьте мгновенную загрузку, а потом используйте действие "Ждать полной загрузки"
@Fox Спасибо. Но я уже отвык от кубиков. Я не вижу в них схемы скрипта. Путаюсь)) В общем это тоже самое что и у меня. Но без проверки. Мне необходимо знать не ошибки, а конкретные действия. И если это cloudflare то в общую стату оно не заносится. Но еще раз спасибо. Я уже вылизал свой говонокод скрипт. Заодно апи по браузеру вспомнил.