1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 2200+ и мы растем!
    Скрыть объявление

Ошибка JavaScript execution error (CloudFlare)

Тема в разделе "Закрытые без версии", создана пользователем malexoid, 12 апр 2021.

  1. malexoid

    malexoid A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    7 сен 2015
    Сообщения:
    263
    Симпатии:
    59
    Версия a-parser: 1.2.1191 (Linux)
    Проблема

    При работе JS парсера периодически возникает ошибка, по всей видимости это не корректно срабатывает обход CF
    Если несколько раз позапускать этот код, чтобы срабатала защита CF в определенный момент, то получим ошибку
    Код:
    class Parser {
        constructor() {
            this.defaultConf = {
                version: '0.1.30',
                results: {
                    flat: [
                        ['title', 'HTML title'],
                    ]
                },
                results_format: '$query: $title\\n',
                parsecodes: {
                    200: 1,
                },
                max_size: 200 * 1024,
            };
        }
    
        *parse(set, results) {
            this.logger.put("Start scraping query: " + set.query);
    
            let data_image = "https://beton-forum.ru/wp-content/cache/thumb/fc/a8ba0cc679178fc_600x550.jpg";
            
            //check data_image return 200 code
            let LocalResp = yield this.request('HEAD', data_image, {}, {
                recurse: 0,
                parsecodes: {200: 1},
                max_size: 30*1024*1024,
                use_proxy: 0,
                browser: 1,
                bypass_cloudflare: 1
            });           
    
            if(!LocalResp.success) {
                this.logger.put("Image "+data_image+" not correct! ignore it!");
    
                results.success = false;
            } else {
            
                this.logger.put("Image "+data_image+" OK!");
                results.success = true;
            }
    
            return results;
        }
    }
    Полностью текст ошибки из лога:
    Скрин ошибки:
    upload_2021-4-12_10-9-39.png
     
  2. Support Artur

    Support Artur Moderator
    Команда форума A-Parser Enterprise

    Регистрация:
    6 апр 2020
    Сообщения:
    129
    Симпатии:
    37
    Добрый день, используйте экспериментальный обход капчи.
    Если необходимо получить только заголовки ответа, то можно использовать опцию onlyheaders

    [​IMG]
     
    malexoid нравится это.
  3. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.291
    Симпатии:
    1.764
    предыдущий ответ не совсем верный, правильно использовать именно опцию
    Код:
    bypass_cloudflare: 1,
    
    в 1.2.1193(альфа) исправлена ошибка, также стоит учесть что обход CloudFlare доступен только из парсеров с API v2
     
    malexoid нравится это.

Поделиться этой страницей