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

Как задать формат результат при методе oneRequest через API?

Тема в разделе "Техническая поддержка лицензии Enterprise", создана пользователем Никита Кнауб, 19 мар 2025.

  1. Никита Кнауб

    Никита Кнауб A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    19 ноя 2024
    Сообщения:
    2
    Симпатии:
    0
    Проверка индексации в Google. Через цикл проверяю каждую страницу. Результат нужен в определенном формате.

    Код:
    # Отправка каждого запроса через oneRequest
    for query in queries:
        try:
            # Формирование данных для запроса
            request_data = {
                "parser": "SE::Google",  # Парсер
                "preset": "default",  # Пресет
                "configPreset": "50 потоков",  # Конфигурация потоков
                "query": query,  # Запрос
                "resultsFormat": "$query.orig;[% p1.totalcount > 0 ? 'index' : 'noindex' %];$p1.totalcount\\n",       
                 "queryFormat": [
                    "inurl:$query"
                    ],
                
                "doLog": 0,  # Не возвращать логи
                "options": [
                    {"value": 1, "type": "override", "id": "pagecount"},
                    {"value": 10, "type": "override", "id": "linksperpage"},
                    {"type": "override", "id": "useproxy", "value": True}
                ]
            }
    
            # Отправка запроса
            response = aparser.oneRequest(**request_data)
            print(f"Response for query '{query}': {response}")
    
        except Exception as e:
            print(f"Error adding task for query '{query}': {e}")
            
         
    Возвращается строка формата: Response for query 'https://url/': {'success': 1, 'data': {'resultString': 'https://url/'\n', 'logs': []}}
    А мне нужно: "url";"index\noindex";"count pages"
     
  2. Никита Кнауб

    Никита Кнауб A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    19 ноя 2024
    Сообщения:
    2
    Симпатии:
    0
    работает ли задание формата результата resultsFormat в методе oneRequest?
     
  3. Support

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

    Регистрация:
    16 мар 2012
    Сообщения:
    4.682
    Симпатии:
    2.201
    Формат результата в one/bulkRequest нужно указывать так же, как и любые другие параметры, через override:
    Код:
    "options": [
       {"value": 1, "type": "override", "id": "pagecount"},
       {"value": 10, "type": "override", "id": "linksperpage"},
       {"type": "override", "id": "useproxy", "value": true},
       {"type": "override", "id": "formatresult", "value": "$query.orig;[% p1.totalcount > 0 ? 'index' : 'noindex' %];$p1.totalcount\\n"}
    ]
    
    Либо можно задать rawResults: 1, получить все собираемые результаты и обработать их средствами скрипта, из которого осуществляется API запрос.
     

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