Использование тегов div API OneNote для извлечения данных из записанного содержимогоUse OneNote API div tags to extract data from captures

Область применения: записные книжки клиентов в OneDrive и корпоративные записные книжки в Office 365.Applies to Consumer notebooks on OneDrive | Enterprise notebooks on Office 365

Используйте API OneNote, чтобы извлекать данные визитных карточек с изображения или данные из рецептов и описаний товаров по URL-адресу.Use the OneNote API to extract business card data from an image, or recipe and product data from a URL.

Атрибуты извлеченияExtraction attributes

Чтобы извлекать и преобразовывать данные, просто включите элемент div, указывающий исходный контент, метод извлечения и резервное действие в запрос create-page или update-page.To extract and transform data, simply include a div that specifies the source content, extraction method, and fallback behavior in your create-page or update-page request. API отображает извлеченные данные на странице в простом для чтения формате.The API renders extracted data on the page in an easy-to-read format.

<div
  data-render-src="image-or-url"
  data-render-method="extraction-method"
  data-render-fallback="fallback-action">
</div>

data-render-srcdata-render-src

Источник контента.The content source. Это может быть изображение визитной карточки либо абсолютный URL-адрес страницы с рецептом или описанием товара.This can be an image of a business card or an absolute URL from many popular recipe or product websites. Обязательный.Required.

Для наилучших результатов используйте канонический URL-адрес, указанный в HTML-коде исходной веб-страницы (если он указан).For best results when specifying a URL, use the canonical URL defined in the HTML of the source webpage, if one is defined. Например, канонический URL-адрес может быть задан в исходной веб-странице следующим образом:For example, a canonical URL might be defined in the source webpage like this:

<link rel="canonical" href="www.domainname.com/page/123/size12/type987" />

data-render-methoddata-render-method

Метод извлечения, который необходимо запустить.The extraction method to run. Обязательный.Required.

ЗначениеValue ОписаниеDescription
extract.businesscardextract.businesscard Извлечение данных визитной карточки.A business card extraction.
extract.recipeextract.recipe Извлечение рецепта.A recipe extraction.
extract.productextract.product Извлечение описания товара.A product listing extraction.
extractextract Неизвестный тип извлечения.An unknown extraction type.

Для наилучших результатов укажите тип контента (extract.businesscard, extract.recipe или extract.product), если вы его знаете.For best results, specify the content type (extract.businesscard, extract.recipe, or extract.product) if you know it. Если тип контента неизвестен, используйте метод extract, и API OneNote попытается автоматически его определить.If the type is unknown, use the extract method, and the OneNote API will try to auto-detect the type.

data-render-fallbackdata-render-fallback

Резервное действие при неудачном извлечении.The fallback behavior if the extraction fails. Если атрибут не указан, по умолчанию используется значение render.Defaults to render if omitted.

ЗначениеValue ОписаниеDescription
renderrender Отображает исходное изображение или снимок веб-страницы с рецептом или товаром.Renders the source image or a snapshot of the recipe or product webpage.
Нетnone Не выполняет никаких действий.Does nothing.

Этот параметр удобно использовать, если вы хотите всегда размещать снимок визитной карточки или веб-страницы на странице (в дополнение к извлеченному контенту).This option is useful if you want to always include a snapshot of the business card or webpage on the page in addition to any extracted content. Обязательно отправляйте отдельный элемент img в запросе, как показано в примерах.Be sure to send a separate img element in the request, as shown in the examples.

Извлечение данных визитной карточкиBusiness card extractions

API OneNote пытается найти и отобразить следующую контактную информацию на основе изображения визитной карточки человека или компании.The OneNote API tries to find and render the following contact information based on an image of a person's or company's business card.

  • ИмяName
  • НазваниеTitle
  • ОрганизацияOrganization
  • Номер телефона/факсаPhone and fax numbers
  • Почтовый и фактический адресMailing and physical addresses
  • Адреса электронной почтыEmail addresses
  • Веб-сайтыWebsites
An example business card extraction

Извлеченная контактная информация в формате vCard (файл с расширением VCF) также внедряется в страницу. vCard — это удобный способ получить контактную информацию при извлечении HTML-контента страницы.A vCard (.VCF file) with the extracted contact information is also embedded in the page. The vCard is a convenient way to get the contact information when retrieving page HTML content.

Стандартные сценарии извлечения элементов визитных карточекCommon scenarios for business card extractions

Извлечение данных визитной карточки и отрисовка ее изображенияExtract business card information, and also render the business card image

Укажите метод extract.businesscard и резервное действие none.Specify the extract.businesscard method and the none fallback. Кроме того, отправьте элемент img с атрибутом src, который также ссылается на изображение.Also send an img element with the src attribute that also references the image. Если API не может извлечь какой-либо контент, он отрисовывает только изображение визитной карточки.If the API is unable to extract any content, it renders the business card image only.

<div
    data-render-src="name:scanned-card-image"
    data-render-method="extract.businesscard"
    data-render-fallback="none">
</div>
<img src="name:scanned-card-image" />

Извлечение данных визитной карточки и отрисовка ее изображения только при неудачном извлеченииExtract business card information, and render the business card image only if the extraction fails

Укажите метод extract.businesscard и используйте резервное действие по умолчанию render.Specify the extract.businesscard method and use the default render fallback. Если API не может извлечь какой-либо контент, он отрисовывает изображение визитной карточки.If the API is unable to extract any content, it renders the business card image instead.

<div
    data-render-src="name:scanned-card-image"
    data-render-method="extract.businesscard">
</div>

При извлечении данных визитной карточки изображение отправляется в виде именованной части в составном запросе.For business card extractions, the image is sent as a named part in a multipart request. Примеры отправки изображения в запросе см. в статье Добавление изображений и файлов.See Add images and files for examples that show how to send an image in a request.

Извлечение рецептовRecipe extractions

На основе URL-адреса рецепта API OneNote пытается найти и отобразить указанные ниже сведения.The OneNote API tries to find and render the following information based on a recipe's URL.

  • Изображение главного имиджевого баннераHero image
  • ОценкаRating
  • ингредиенты;Ingredients
  • ИнструкцииInstructions
  • время подготовки, приготовления и общее;Prep, cook, and total times
  • СервировкаServings
An example recipe extraction

API оптимизирован для работы с рецептами со многих популярных сайтов, например Allrecipes.com, FoodNetwork.com и SeriousEats.com.The API is optimized for recipes from many popular sites such as Allrecipes.com, FoodNetwork.com, and SeriousEats.com.

Стандартные сценарии извлечения рецептовCommon scenarios for recipe extractions

Извлечение рецепта и отображение снимка веб-страницы с рецептомExtract recipe information, and also render a snapshot of the recipe webpage

Укажите метод extract.recipe и резервное действие none.Specify the extract.recipe method and the none fallback. Кроме того, отправьте элемент img с атрибутом data-render-src, в качестве значения которого используется URL-адрес рецепта.Also send an img element with the data-render-src attribute set to the recipe URL. Если API не может извлечь какой-либо контент, он отображает только снимок веб-страницы с рецептом.If the API is unable to extract any content, it renders a snapshot of the recipe webpage only.

Потенциально этот сценарий дает максимальное количество сведений, так как на веб-странице может быть дополнительная информация, например отзывы и предложения клиентов.This scenario potentially provides the most information because the webpage may include additional information, such as customer reviews and suggestions.

<div
    data-render-src="https://allrecipes.com/recipe/guacamole/"
    data-render-method="extract.recipe"
    data-render-fallback="none">
</div>
<img data-render-src="https://allrecipes.com/recipe/guacamole/" />

Извлечение рецепта и отображение снимка веб-страницы с рецептом только в случае неудачного извлеченияExtract recipe information, and render a snapshot of the recipe webpage only if the extraction fails

Укажите метод extract.recipe и используйте резервное действие по умолчанию.Specify the extract.recipe method and use the default render fallback. Если API не может извлечь какой-либо контент, он отображает снимок веб-страницы с рецептом.If the API is unable to extract any content, it renders a snapshot of the recipe webpage instead.

<div
    data-render-src="https://www.foodnetwork.com/recipes/alton-brown/creme-brulee-recipe.html"
    data-render-method="extract.recipe">
</div>

Укажите метод extract.recipe и резервное действие none.Specify the extract.recipe method and the none fallback. Кроме того, отправьте элемент a с атрибутом src, в качестве значения которого задан URL-адрес рецепта (вы также можете отправить любую информацию, которую необходимо добавить на страницу).Also send an a element with the src attribute set to the recipe URL (or you can send any other information you want to add to the page). Если API не может извлечь какой-либо контент, отображается только ссылка на рецепт.If the API is unable to extract any content, only the recipe link is rendered.

<div
    data-render-src="https://www.seriouseats.com/recipes/2014/09/diy-spicy-kimchi-beef-instant-noodles-recipe.html"
    data-render-method="extract.recipe"
    data-render-fallback="none">
</div>
<a href="https://www.seriouseats.com/recipes/2014/09/diy-spicy-kimchi-beef-instant-noodles-recipe.html">Recipe URL</a>

Извлечение описания товараProduct listing extractions

  • НазваниеTitle
  • ОценкаRating
  • первичное изображение;Primary image
  • ОписаниеDescription
  • ВозможностиFeatures
  • СпецификацииSpecifications
An example product listing extraction

API оптимизирован для работы с товарами со многих популярных сайтов, например Amazon.com и HomeDepot.com.The API is optimized for products from many popular sites such as Amazon.com and HomeDepot.com.

Стандартные сценарии извлечения рецептовCommon scenarios for recipe extractions

Извлечение информации о товаре и отображение снимка веб-страницы товараExtract product information, and also render a snapshot of the product webpage

Укажите метод extract.product и резервное действие none.Specify the extract.product method and the none fallback. Кроме того, отправьте элемент img с атрибутом data-render-src, в качестве значения которого используется URL-адрес страницы товара.Also send an img element with the data-render-src attribute set to the product URL. Если API не может извлечь какой-либо контент, он отображает только снимок веб-страницы товара.If the API is unable to extract any content, it renders a snapshot of the product webpage only.

Потенциально этот сценарий дает максимальное количество сведений, так как на веб-странице может быть дополнительная информация, например отзывы и предложения клиентов.This scenario potentially provides the most information because the webpage may include additional information, such as customer reviews and suggestions.

<div
    data-render-src="https://www.amazon.com/Microsoft-Band-Small/dp/B00P2T2WVO"
    data-render-method="extract.product"
    data-render-fallback="none">
</div>
<img data-render-src="https://www.amazon.com/Microsoft-Band-Small/dp/B00P2T2WVO" />

Извлечение информации о товаре и отображение снимка веб-страницы с товаром только в случае неудачного извлеченияExtract product information, and render a snapshot of the product webpage only if the extraction fails

Укажите метод extract.product и используйте резервное действие по умолчанию.Specify the extract.product method and use the default render fallback. Если API не может извлечь какой-либо контент, он вместо этого отображает снимок веб-страницы товара.If the API is unable to extract any content, it renders a snapshot of the product webpage instead.

<div
    data-render-src="https://www.sears.com/craftsman-19hp-42-8221-turn-tight-174-hydrostatic-yard-tractor/p-07120381000P"
    data-render-method="extract.product">
</div>

Укажите метод extract.product и резервное действие none.Specify the extract.product method and the none fallback. Кроме того, отправьте элемент a с атрибутом src, в качестве значения которого задан URL-адрес страницы товара (вы также можете отправить любую информацию, которую необходимо добавить на страницу).Also send an a element with the src attribute set to the product URL (or you can send any other information you want to add to the page). Если API не может извлечь какой-либо контент, отображается только ссылка на страницу.If the API is unable to extract any content, only the page link is rendered.

<div
    data-render-src="https://www.homedepot.com/p/Active-Ventilation-5-Watt-Solar-Powered-Exhaust-Attic-Fan-RBSF-8-WT/204203001"
    data-render-method="extract.product"
    data-render-fallback="none">
</div>
<a href="https://www.homedepot.com/p/Active-Ventilation-5-Watt-Solar-Powered-Exhaust-Attic-Fan-RBSF-8-WT/204203001">Product URL</a>

Извлечение содержимого неизвестного типаUnknown content type extractions

Если вы не знаете тип контента (визитная карточка, рецепт или товар), который вы отправляете, вы можете использовать неполный метод extract и разрешить API OneNote автоматически определять тип контента.If you don't know the content type (business card, recipe, or product) that you're sending, you can use the unqualified extract method and let the OneNote API automatically detect the type. Вы можете сделать это, если ваше приложение отправляет изображения различных типов.You might want to do this if your app sends different capture types.

Примечание. Если вы не знаете тип контента, который вы отправляете, используйте метод extract.businesscard, extract.recipe или extract.product.Note: If you do know the content type that you're sending, you should use the extract.businesscard, extract.recipe, or extract.product method. В некоторых случаях это позволяет оптимизировать результаты извлечения.In some cases, this can help to optimize the extraction results.

Стандартные сценарии извлечения контента неизвестного типаCommon scenarios for unknown extractions

Отправка изображения или URL-адреса и отображение предоставленного изображения или снимка веб-страницы при неудачном извлеченииSend an image or a URL, and render the supplied image or a snapshot of the webpage if the extraction fails

Укажите метод extract, чтобы API автоматически определял тип контента, и используйте резервное действие по умолчанию.Specify the extract method so the API automatically detects the content type, and use the default render fallback. Если API не может извлечь какой-либо контент, он отображает предоставленное изображение или снимок веб-страницы.If the API is unable to extract any content, it renders the supplied image or snapshot of the webpage instead.

<div
    data-render-src="some image or url"
    data-render-method="extract">
</div>

Информация в ответеResponse information

Данные в ответеResponse data ОписаниеDescription
Код успешного завершения действияSuccess code Код состояния HTTP 201 при успешном выполнении запроса POST и код состояния HTTP 204 при успешном выполнении запроса PATCH.A 201 HTTP status code for a successful POST request, and a 204 HTTP status code for a successful PATCH request.
ОшибкиErrors Дополнительные сведения об ошибках OneNote, которые может возвращать Microsoft Graph, см. в статье Коды ошибок для API OneNote в Microsoft Graph.Read Error codes for OneNote APIs in Microsoft Graph to learn about OneNote errors that Microsoft Graph can return.

РазрешенияPermissions

Чтобы можно было создавать или изменять страницы OneNote, вам придется запросить соответствующие разрешения.To create or update OneNote pages, you'll need to request appropriate permissions. Выберите минимальный уровень разрешений, необходимый для работы вашего приложения.Choose the lowest level of permissions that your app needs to do its work.

Разрешения для запросов POST со страницамиPermissions for POST pages

  • Notes.CreateNotes.Create
  • Notes.ReadWriteNotes.ReadWrite
  • Notes.ReadWrite.AllNotes.ReadWrite.All

Разрешения в случае запросов PATCH для страницPermissions for PATCH pages

  • Notes.ReadWriteNotes.ReadWrite
  • Notes.ReadWrite.AllNotes.ReadWrite.All

Дополнительные сведения об областях разрешений и принципе их использования см. в справочнике по разрешениям Microsoft Graph.For more information about permission scopes and how they work, see Microsoft Graph permissions reference.

См. такжеSee also