1. Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 1100+ и мы растем!
    Скрыть объявление

добавление задания через api

Тема в разделе "Техническая поддержка лицензии Enterprise", создана пользователем malexoid, 31 май 2016.

  1. malexoid

    malexoid A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    7 сен 2015
    Сообщения:
    242
    Симпатии:
    56
    Добавляю задание через api,
    Код:
    { "password":"*",
      "action" : "addTask",
      "data" : {
          "preset" : "wordstat_expansion",
          "configPreset" : "100 Threads",
          "queriesFrom" : "text",
          "queries" : [
            "count:10,deep:50000,source:left,xmloutput:1,key:шины"
           ],
    
          "options" : [
            {
                "value" : ["35"],
                "type" : "override",
                "id" : "geo"
            }
          ]
    
    
      }
    }
    в задании wordstat_expansion только один парсер "SE::Yandex::WordStat", через options пытаюсь переопределить регион, но почему-то это не получается сделать.

    Вот что сообщается статус

    Код:
    {
      "success": 1,
      "data": {
        "parsers": [
          [
            "SE::Yandex::WordStat",
            "wordstat_expansion",
            {
              "value": [
                "225"
              ],
              "id": "geo",
              "type": "override"
            },
            {
              "value": 1,
              "id": "pagecount",
              "type": "override"
            }
          ]
        ],
        "resultsFileName": "wordstat_expansion_level_test_0_1_right.txt",
        "runTaskOnComplete": null,
        "options": [
          {
            "value": [
              "35"
            ],
            "type": "override",
            "id": "geo"
          }
        ],
        "resultsPrepend": "",
        "origResultsFileName": "wordstat_expansion_level_test_0_1_right.txt",
        "queriesFrom": "text",
        "runTaskOnCompleteConfig": "default",
        "doLog": "db",
        "useResultsFileAsQueriesFile": false,
        "additionalFormats": [
         
        ],
        "resultsSaveTo": "file",
        "resultsFormat": "*",
        "queryBuilders": [
          {
            "source": "query",
            "to": [
              "count",
              "deep",
              "source",
              "xmloutput",
              "query"
            ],
            "regexType": null,
            "regex": "^count:(.*),deep:(.*),source:(.*),xmloutput:(.*),key:(.*)$",
            "type": "regex"
          }
        ],
        "preset": "wordstat_expansion",
        "resultsAppend": "",
        "uniqueQueries": true,
        "keepUnique": 0,
        "queries": [
          "count:10,deep:50000,source:left,xmloutput:1,key:шины"
        ],
        "configPreset": "100 Threads",
        "saveFailedQueries": false,
        "toolsJS": "",
        "moreOptions": true,
        "resultsBuilders": [
         
        ],
        "resultsUnique": "no",
        "iteratorOptions": {
          "onAllLevels": false,
          "queryBuildersAfterIterator": false,
          "queryBuildersOnAllLevels": false
        },
        "queryFormat": [
          "$query"
        ],
        "configOverrides": [
         
        ],
        "resultsOptions": {
          "overwrite": true
        }
      }
    }
    
    Вопрос, как переопределить geo в парсере SE::Yandex::WordStat через API, используя уже готовое задание? Вариант - через "parser" не подходит - т..к хочется использовать уже готовое задание, чтобы если что оперативно менять его в вебинтерфейсе апарсера.
     
  2. malexoid

    malexoid A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    7 сен 2015
    Сообщения:
    242
    Симпатии:
    56
    Если переопределять через parser, то затираются остальные настройки парсера, которые переопределены в самом задании.
    Код:
    { "password":"*",
      "action" : "addTask",
      "data" : {
          "preset" : "wordstat_expansion",
          "configPreset" : "100 Threads",
          "queriesFrom" : "text",
          "queries" : [
            "count:10,deep:50000,source:left,xmloutput:1,key:шины"
           ],
    
    
        "parsers": [
            [
              "SE::Yandex::WordStat",
              "wordstat_expansion",
               {
                "value":  "35",
                "id": "geo",
                "type": "override"
               }
            ]
        ]
    
    
    
      }
    }
    
    В результат такой. Видно, что pagecount затёрся:
    Код:
    {
      "success": 1,
      "data": {
        "parsers": [
          [
            "SE::Yandex::WordStat",
            "wordstat_expansion",
            {
              "value": "35",
              "id": "geo",
              "type": "override"
            }
          ]
        ],
        "runTaskOnComplete": null,
        "resultsFileName": "wordstat_expansion_level_test_0_1_right.txt",
        "resultsPrepend": "",
        "origResultsFileName": "wordstat_expansion_level_test_0_1_right.txt",
        "queriesFrom": "text",
        "runTaskOnCompleteConfig": "default",
        "doLog": "db",
        "useResultsFileAsQueriesFile": false,
        "resultsSaveTo": "file",
        "additionalFormats": [
         
        ],
        "queryBuilders": [
          {
            "source": "query",
            "to": [
              "count",
              "deep",
              "source",
              "xmloutput",
              "query"
            ],
            "regex": "^count:(.*),deep:(.*),source:(.*),xmloutput:(.*),key:(.*)$",
            "regexType": null,
            "type": "regex"
          }
        ],
        "resultsFormat": "*",
        "preset": "wordstat_expansion",
        "resultsAppend": "",
        "uniqueQueries": true,
        "keepUnique": 0,
        "queries": [
          "count:10,deep:50000,source:left,xmloutput:1,key:шины"
        ],
        "configPreset": "100 Threads",
        "saveFailedQueries": false,
        "toolsJS": "",
        "resultsBuilders": [
         
        ],
        "moreOptions": true,
        "resultsUnique": "no",
        "iteratorOptions": {
          "onAllLevels": false,
          "queryBuildersAfterIterator": false,
          "queryBuildersOnAllLevels": false
        },
        "queryFormat": [
          "$query"
        ],
        "configOverrides": [
         
        ],
        "resultsOptions": {
          "overwrite": true
        }
      }
    }
     
  3. Forbidden

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

    Регистрация:
    9 мар 2013
    Сообщения:
    3.199
    Симпатии:
    1.713
    настройки для парсера можно задать только совсместно с перечислением самих парсеров, т.е. необходимо указать полностью все парсеры и их настройки
     
  4. malexoid

    malexoid A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    7 сен 2015
    Сообщения:
    242
    Симпатии:
    56
    эх, не удобно то как. Хотел, чтобы логика вся хранилась в самом апарсере, а со стороны клиента настроек не было :(
    напрашивается механизм передачи значений для override параметров из вне.
     
  5. Forbidden

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

    Регистрация:
    9 мар 2013
    Сообщения:
    3.199
    Симпатии:
    1.713
    Можно получить целиком конфигурацию существующего задания: getTaskConf и поменять необходимые поля
     

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