Ошибка при работе с API

  • Автор темы Автор темы Al
  • Дата начала Дата начала

Al

A-Parser Enterprise License
A-Parser Enterprise
После написания нескольких кастомных парсеров чере Net::Http появился следующий баг: если отправить подряд несколько запросов по одному пресету, то и выполнения задачи и результаты как бы склеиваются и в результате некоторых файла оказываются и соседние запросы тоже. По моим наблюдениям ошибка возникает, когда в пресете используется переменная $query.orig.

Запросы отправляю и получаю следующим кодом:
my $parser = AParser->new('http://localhost:9091/API', 'password');
my($taskUid, $error) = $parser->addTask('20-threads-proxy', $transform, 'text', [$input]);
if($taskUid)
{
$parser->waitForTask($taskUid);
my $url=$parser->getTaskResultsFile($taskUid);
my $content = get $url;
...
...
}
 
Скорее всего проблема в том, что возможно где-то допущена ошибка (в коде или задании) и сохранение результатов идет в один и тот же файл. Или запросы отправляются по несколько штук в секунду, что при использовании стандартного формата имени файла $datefile.format().txt дает одинаковый файл, в который пишутся результаты из разных заданий. В таком случае можно в имя файла дописывать запрос, или другую информацию, чтобы сделать его более уникальным. Например:
Код:
$query_$datefile.format().txt
 
Назад
Верх