קבלת משאבים ורישום שלהם

בכל שלב, אתם יכולים לרשום ולקבל כל סט מוצרים, מוצר או תמונה להמחשה שיש לכם.

הצגת קבוצות מוצרים

בקטע הזה מוסבר איך לאחזר רשימה של כל קבוצות המוצרים.

REST

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה מיקום תקין. מזהי מיקום תקינים: us-west1,‏ us-east1,‏ europe-west1 ו-asia-east1.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו:

Go

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Go API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


import (
	"context"
	"fmt"
	"io"

	vision "cloud.google.com/go/vision/apiv1"
	"cloud.google.com/go/vision/v2/apiv1/visionpb"
	"google.golang.org/api/iterator"
)

// listProductSets lists product sets.
func listProductSets(w io.Writer, projectID string, location string) error {
	ctx := context.Background()
	c, err := vision.NewProductSearchClient(ctx)
	if err != nil {
		return fmt.Errorf("NewProductSearchClient: %w", err)
	}
	defer c.Close()

	req := &visionpb.ListProductSetsRequest{
		Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, location),
	}

	it := c.ListProductSets(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("Next: %w", err)
		}

		fmt.Fprintf(w, "Product set name: %s\n", resp.Name)
		fmt.Fprintf(w, "Product set display name: %s\n", resp.DisplayName)
		fmt.Fprintf(w, "Product set index time:\n")
		fmt.Fprintf(w, "seconds: %d\n", resp.IndexTime.Seconds)
		fmt.Fprintf(w, "nanos: %d\n", resp.IndexTime.Nanos)
	}

	return nil
}

Java

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Java API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * List all product sets
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @throws IOException - on I/O errors.
 */
public static void listProductSets(String projectId, String computeRegion) throws IOException {
  try (ProductSearchClient client = ProductSearchClient.create()) {
    // A resource that represents Google Cloud Platform location.
    String formattedParent = LocationName.format(projectId, computeRegion);
    // List all the product sets available in the region.
    for (ProductSet productSet : client.listProductSets(formattedParent).iterateAll()) {
      // Display the product set information
      System.out.println(String.format("Product set name: %s", productSet.getName()));
      System.out.println(
          String.format(
              "Product set id: %s",
              productSet.getName().substring(productSet.getName().lastIndexOf('/') + 1)));
      System.out.println(
          String.format("Product set display name: %s", productSet.getDisplayName()));
      System.out.println("Product set index time:");
      System.out.println(String.format("\tseconds: %s", productSet.getIndexTime().getSeconds()));
      System.out.println(String.format("\tnanos: %s", productSet.getIndexTime().getNanos()));
    }
  }
}

Node.js

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Node.js API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

// Imports the Google Cloud client library
const vision = require('@google-cloud/vision');

// Creates a client
const client = new vision.ProductSearchClient();

async function listProductSets() {
  /**
   * TODO(developer): Uncomment the following line before running the sample.
   */
  // const projectId = 'Your Google Cloud project Id';
  // const location = 'A compute region name';

  // Resource path that represents Google Cloud Platform location.
  const locationPath = client.locationPath(projectId, location);

  const [productSets] = await client.listProductSets({parent: locationPath});
  productSets.forEach(productSet => {
    console.log(`Product Set name: ${productSet.name}`);
    console.log(`Product Set display name: ${productSet.displayName}`);
  });
}
listProductSets();

Python

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Python API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

from google.cloud import vision

def list_product_sets(project_id, location):
    """List all product sets.
    Args:
        project_id: Id of the project.
        location: A compute region name.
    """
    client = vision.ProductSearchClient()

    # A resource that represents Google Cloud Platform location.
    location_path = f"projects/{project_id}/locations/{location}"

    # List all the product sets available in the region.
    product_sets = client.list_product_sets(parent=location_path)

    # Display the product set information.
    for product_set in product_sets:
        print(f"Product set name: {product_set.name}")
        print("Product set id: {}".format(product_set.name.split("/")[-1]))
        print(f"Product set display name: {product_set.display_name}")
        print("Product set index time: ")
        print(product_set.index_time)


שפות נוספות

C#‎: צריך לפעול לפי הוראות ההגדרה של C# ‎ בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה בנושא Google Product Search ב-Vision API עבור ‎ .NET.

PHP: עליכם לפעול לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז לעבור אל מסמכי העזר של Google Product Search ב-Vision API ל-PHP.

Ruby: צריך לפעול לפי ההוראות להגדרת Ruby בדף של ספריות הלקוח ולעיין במסמכי העזר של Vision API Google Product Search ל-Ruby.

קבלת ערכת מוצרים בודדת

אתם יכולים לקבל קבוצת מוצרים אחת לשימוש או לשינוי.

REST

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה מיקום תקין. מזהי מיקום תקינים: us-west1,‏ us-east1,‏ europe-west1 ו-asia-east1.
  • PRODUCT_SET_ID: המזהה של קבוצת המוצרים שרוצים להריץ עליה את הפעולה.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets/product-set-id

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets/product-set-id"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets/product-set-id" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "name": "projects/project-id/locations/location-id/productSets/product-set-id",
  "displayName": "display-name",
  "indexTime": "2019-09-04T15:33:43.581861690Z",
  "indexError": {}
}

Go

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Go API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


import (
	"context"
	"fmt"
	"io"

	vision "cloud.google.com/go/vision/apiv1"
	"cloud.google.com/go/vision/v2/apiv1/visionpb"
)

// getProductSet gets a product set.
func getProductSet(w io.Writer, projectID string, location string, productSetID string) error {
	ctx := context.Background()
	c, err := vision.NewProductSearchClient(ctx)
	if err != nil {
		return fmt.Errorf("NewProductSearchClient: %w", err)
	}
	defer c.Close()

	req := &visionpb.GetProductSetRequest{
		Name: fmt.Sprintf("projects/%s/locations/%s/productSets/%s", projectID, location, productSetID),
	}

	resp, err := c.GetProductSet(ctx, req)
	if err != nil {
		return fmt.Errorf("GetProductSet: %w", err)
	}

	fmt.Fprintf(w, "Product set name: %s\n", resp.Name)
	fmt.Fprintf(w, "Product set display name: %s\n", resp.DisplayName)
	fmt.Fprintf(w, "Product set index time:\n")
	fmt.Fprintf(w, "seconds: %d\n", resp.IndexTime.Seconds)
	fmt.Fprintf(w, "nanos: %d\n", resp.IndexTime.Nanos)

	return nil
}

Java

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Java API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * Get info about the product set.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productSetId - Id of the product set.
 * @throws IOException - on I/O errors.
 */
public static void getProductSet(String projectId, String computeRegion, String productSetId)
    throws IOException {
  try (ProductSearchClient client = ProductSearchClient.create()) {

    // Get the full path of the product set.
    String formattedName = ProductSetName.format(projectId, computeRegion, productSetId);
    // Get complete detail of the product set.
    ProductSet productSet = client.getProductSet(formattedName);
    // Display the product set information
    System.out.println(String.format("Product set name: %s", productSet.getName()));
    System.out.println(
        String.format(
            "Product set id: %s",
            productSet.getName().substring(productSet.getName().lastIndexOf('/') + 1)));
    System.out.println(
        String.format("Product set display name: %s", productSet.getDisplayName()));
    System.out.println("Product set index time:");
    System.out.println(String.format("\tseconds: %s", productSet.getIndexTime().getSeconds()));
    System.out.println(String.format("\tnanos: %s", productSet.getIndexTime().getNanos()));
  }
}

Node.js

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Node.js API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

// Imports the Google Cloud client library
const vision = require('@google-cloud/vision');

// Creates a client
const client = new vision.ProductSearchClient();

async function getProductSet() {
  /**
   * TODO(developer): Uncomment the following line before running the sample.
   */
  // const projectId = 'Your Google Cloud project Id';
  // const location = 'A compute region name';
  // const productSetId = 'Id of the product set';

  // Resource path that represents Google Cloud Platform location.
  const productSetPath = client.productSetPath(
    projectId,
    location,
    productSetId
  );

  const [productSet] = await client.getProductSet({name: productSetPath});
  console.log(`Product Set name: ${productSet.name}`);
  console.log(`Product Set display name: ${productSet.displayName}`);
}
getProductSet();

Python

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Python API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

from google.cloud import vision

def get_product_set(project_id, location, product_set_id):
    """Get info about the product set.
    Args:
        project_id: Id of the project.
        location: A compute region name.
        product_set_id: Id of the product set.
    """
    client = vision.ProductSearchClient()

    # Get the full path of the product set.
    product_set_path = client.product_set_path(
        project=project_id, location=location, product_set=product_set_id
    )

    # Get complete detail of the product set.
    product_set = client.get_product_set(name=product_set_path)

    # Display the product set information.
    print(f"Product set name: {product_set.name}")
    print("Product set id: {}".format(product_set.name.split("/")[-1]))
    print(f"Product set display name: {product_set.display_name}")
    print("Product set index time: ")
    print(product_set.index_time)


שפות נוספות

C#‎: צריך לפעול לפי הוראות ההגדרה של C# ‎ בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה בנושא Google Product Search ב-Vision API עבור ‎ .NET.

PHP: עליכם לפעול לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז לעבור אל מסמכי העזר של Google Product Search ב-Vision API ל-PHP.

Ruby: צריך לפעול לפי ההוראות להגדרת Ruby בדף של ספריות הלקוח ולעיין במסמכי העזר של Vision API Google Product Search ל-Ruby.

פרסום מוצרים

אתם יכולים לראות את כל המוצרים בפרויקט Google Cloud Platform, או בקבוצת מוצרים ספציפית.

הצגת רשימה של כל המוצרים בפרויקט

בדוגמה הבאה מוצגות רשימות של מוצרים בפרויקט.

REST

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה מיקום תקין. מזהי מיקום תקינים: us-west1,‏ us-east1,‏ europe-west1 ו-asia-east1.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products" | Select-Object -Expand Content

אם הבקשה תתבצע בהצלחה, השרת יחזיר קוד סטטוס 200 OK של HTTP ואת התשובה בפורמט JSON.

הפלט שיוצג אמור להיות דומה לזה שמופיע כאן. שימו לב שמספר המוצרים שמוחזרים מוגבל ל-10 בכל פעם, ואם יש עוד דפים מוצג nextPageToken.

אם מוחזר nextPageToken, אפשר להשתמש באסימון כדי לקבל את דף התוצאות הבא של המוצרים. משתמשים ב-nextPageToken מ-JSON התגובה (jMGjEqhXMtN95vZz2g בדוגמה הזו) כשאילתת pageToken מצורפת לכתובת ה-URL של הבקשה:

https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products?pageToken=jMGjEqhXMtN95vZz2g

Go

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Go API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


import (
	"context"
	"fmt"
	"io"

	vision "cloud.google.com/go/vision/apiv1"
	"cloud.google.com/go/vision/v2/apiv1/visionpb"
	"google.golang.org/api/iterator"
)

// listProducts lists products.
func listProducts(w io.Writer, projectID string, location string) error {
	ctx := context.Background()
	c, err := vision.NewProductSearchClient(ctx)
	if err != nil {
		return fmt.Errorf("NewProductSearchClient: %w", err)
	}
	defer c.Close()

	req := &visionpb.ListProductsRequest{
		Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, location),
	}

	it := c.ListProducts(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("Next: %w", err)
		}

		fmt.Fprintf(w, "Product name: %s\n", resp.Name)
		fmt.Fprintf(w, "Product display name: %s\n", resp.DisplayName)
		fmt.Fprintf(w, "Product category: %s\n", resp.ProductCategory)
		fmt.Fprintf(w, "Product labels: %s\n", resp.ProductLabels)
	}

	return nil
}

Java

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Java API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * List all products.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @throws IOException - on I/O errors.
 */
public static void listProducts(String projectId, String computeRegion) throws IOException {
  try (ProductSearchClient client = ProductSearchClient.create()) {

    // A resource that represents Google Cloud Platform location.
    String formattedParent = LocationName.format(projectId, computeRegion);

    // List all the products available in the region.
    for (Product product : client.listProducts(formattedParent).iterateAll()) {
      // Display the product information
      System.out.println(String.format("\nProduct name: %s", product.getName()));
      System.out.println(
          String.format(
              "Product id: %s",
              product.getName().substring(product.getName().lastIndexOf('/') + 1)));
      System.out.println(String.format("Product display name: %s", product.getDisplayName()));
      System.out.println(String.format("Product category: %s", product.getProductCategory()));
      System.out.println("Product labels:");
      System.out.println(
          String.format("Product labels: %s", product.getProductLabelsList().toString()));
    }
  }
}

Node.js

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Node.js API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

// Imports the Google Cloud client library
const vision = require('@google-cloud/vision');

// Creates a client
const client = new vision.ProductSearchClient();

async function listProducts() {
  /**
   * TODO(developer): Uncomment the following line before running the sample.
   */
  // const projectId = 'Your Google Cloud project Id';
  // const location = 'A compute region name';

  // Resource path that represents Google Cloud Platform location.
  const locationPath = client.locationPath(projectId, location);

  const [products] = await client.listProducts({parent: locationPath});
  products.forEach(product => {
    console.log(`Product name: ${product.name}`);
    console.log(`Product id: ${product.name.split('/').pop()}`);
    console.log(`Product display name: ${product.displayName}`);
    console.log(`Product description: ${product.description}`);
    console.log(`Product category: ${product.productCategory}`);
    if (product.productLabels.length) {
      console.log('Product labels:');
      product.productLabels.forEach(productLabel => {
        console.log(`${productLabel.key}: ${productLabel.value}`);
      });
    }
  });
}
listProducts();

Python

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Python API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

from google.cloud import vision
from google.protobuf import field_mask_pb2 as field_mask

def list_products(project_id, location):
    """List all products.
    Args:
        project_id: Id of the project.
        location: A compute region name.
    """
    client = vision.ProductSearchClient()

    # A resource that represents Google Cloud Platform location.
    location_path = f"projects/{project_id}/locations/{location}"

    # List all the products available in the region.
    products = client.list_products(parent=location_path)

    # Display the product information.
    for product in products:
        print(f"Product name: {product.name}")
        print("Product id: {}".format(product.name.split("/")[-1]))
        print(f"Product display name: {product.display_name}")
        print(f"Product description: {product.description}")
        print(f"Product category: {product.product_category}")
        print(f"Product labels: {product.product_labels}\n")


שפות נוספות

C#‎: צריך לפעול לפי הוראות ההגדרה של C# ‎ בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה בנושא Google Product Search ב-Vision API עבור ‎ .NET.

PHP: עליכם לפעול לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז לעבור אל מסמכי העזר של Google Product Search ב-Vision API ל-PHP.

Ruby: צריך לפעול לפי ההוראות להגדרת Ruby בדף של ספריות הלקוח ולעיין במסמכי העזר של Vision API Google Product Search ל-Ruby.

הצגת כל המוצרים בקבוצת מוצרים

בדוגמה הבאה אפשר לראות איך מציגים רשימה של מוצרים בסט מוצרים ספציפי.

REST

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה מיקום תקין. מזהי מיקום תקינים: us-west1,‏ us-east1,‏ europe-west1 ו-asia-east1.
  • PRODUCT_SET_ID: המזהה של קבוצת המוצרים שרוצים להריץ עליה את הפעולה.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets/product-set-id/products

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets/product-set-id/products"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets/product-set-id/products" | Select-Object -Expand Content

אם הבקשה תתבצע בהצלחה, השרת יחזיר קוד סטטוס 200 OK של HTTP ואת התשובה בפורמט JSON.

הפלט שיוצג אמור להיות דומה לזה שמופיע כאן. שימו לב שמספר המוצרים שמוחזרים מוגבל ל-10 בכל פעם, ואם יש עוד דפים מוצג nextPageToken.

אם מוחזר nextPageToken, אפשר להשתמש באסימון כדי לקבל את דף התוצאות הבא של המוצרים. משתמשים ב-nextPageToken מ-JSON התגובה (e5nEGpoVEZqlBbZRhQ בדוגמה הזו) כשאילתת pageToken מצורפת לכתובת ה-URL של הבקשה:

https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products?pageToken=e5nEGpoVEZqlBbZRhQ

Go

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Go API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


import (
	"context"
	"fmt"
	"io"

	vision "cloud.google.com/go/vision/apiv1"
	"cloud.google.com/go/vision/v2/apiv1/visionpb"
	"google.golang.org/api/iterator"
)

// listProductsInProductSet lists products in a product set.
func listProductsInProductSet(w io.Writer, projectID string, location string, productSetID string) error {
	ctx := context.Background()
	c, err := vision.NewProductSearchClient(ctx)
	if err != nil {
		return fmt.Errorf("NewProductSearchClient: %w", err)
	}
	defer c.Close()

	req := &visionpb.ListProductsInProductSetRequest{
		Name: fmt.Sprintf("projects/%s/locations/%s/productSets/%s", projectID, location, productSetID),
	}

	it := c.ListProductsInProductSet(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("Next: %w", err)
		}

		fmt.Fprintf(w, "Product name: %s\n", resp.Name)
		fmt.Fprintf(w, "Product display name: %s\n", resp.DisplayName)
		fmt.Fprintf(w, "Product category: %s\n", resp.ProductCategory)
		fmt.Fprintf(w, "Product labels: %s\n", resp.ProductLabels)
	}

	return nil
}

Java

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Java API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


/**
 * List all products in a product set.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productSetId - Id of the product set.
 * @throws IOException - on I/O errors.
 */
public static void listProductsInProductSet(
    String projectId, String computeRegion, String productSetId) throws IOException {
  try (ProductSearchClient client = ProductSearchClient.create()) {

    // Get the full path of the product set.
    String formattedName = ProductSetName.format(projectId, computeRegion, productSetId);
    // List all the products available in the product set.
    for (Product product : client.listProductsInProductSet(formattedName).iterateAll()) {
      // Display the product information
      System.out.println(String.format("Product name: %s", product.getName()));
      System.out.println(
          String.format(
              "Product id: %s",
              product.getName().substring(product.getName().lastIndexOf('/') + 1)));
      System.out.println(String.format("Product display name: %s", product.getDisplayName()));
      System.out.println(String.format("Product description: %s", product.getDescription()));
      System.out.println(String.format("Product category: %s", product.getProductCategory()));
      System.out.println("Product labels: ");
      for (Product.KeyValue element : product.getProductLabelsList()) {
        System.out.println(String.format("%s: %s", element.getKey(), element.getValue()));
      }
    }
  }
}

Node.js

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Node.js API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

const vision = require('@google-cloud/vision');

const client = new vision.ProductSearchClient();

async function listProductsInProductSet() {
  /**
   * TODO(developer): Uncomment the following line before running the sample.
   */
  // const projectId = 'Your Google Cloud project Id';
  // const location = 'A compute region name';
  // const productSetId = 'Id of the product set';
  const productSetPath = client.productSetPath(
    projectId,
    location,
    productSetId
  );
  const request = {
    name: productSetPath,
  };

  const [products] = await client.listProductsInProductSet(request);
  products.forEach(product => {
    console.log(`Product name: ${product.name}`);
    console.log(`Product display name: ${product.displayName}`);
  });
}
listProductsInProductSet();

Python

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Python API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

def list_products_in_product_set(project_id, location, product_set_id):
    """List all products in a product set.
    Args:
        project_id: Id of the project.
        location: A compute region name.
        product_set_id: Id of the product set.
    """
    client = vision.ProductSearchClient()

    # Get the full path of the product set.
    product_set_path = client.product_set_path(
        project=project_id, location=location, product_set=product_set_id
    )

    # List all the products available in the product set.
    products = client.list_products_in_product_set(name=product_set_path)

    # Display the product information.
    for product in products:
        print(f"Product name: {product.name}")
        print("Product id: {}".format(product.name.split("/")[-1]))
        print(f"Product display name: {product.display_name}")
        print(f"Product description: {product.description}")
        print(f"Product category: {product.product_category}")
        print(f"Product labels: {product.product_labels}")


שפות נוספות

C#‎: צריך לפעול לפי הוראות ההגדרה של C# ‎ בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה בנושא Google Product Search ב-Vision API עבור ‎ .NET.

PHP: עליכם לפעול לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז לעבור אל מסמכי העזר של Google Product Search ב-Vision API ל-PHP.

Ruby: צריך לפעול לפי ההוראות להגדרת Ruby בדף של ספריות הלקוח ולעיין במסמכי העזר של Vision API Google Product Search ל-Ruby.

קבלת מוצר בודד

אפשר גם לקבל מוצר יחיד לשימוש או לשינוי.

REST

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה מיקום תקין. מזהי מיקום תקינים: us-west1,‏ us-east1,‏ europe-west1 ו-asia-east1.
  • PRODUCT_ID: המזהה של המוצר שמשויך לתמונה לדוגמה. המזהה הזה מוגדר באופן אקראי או מצוין על ידי המשתמש בזמן יצירת המוצר.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "name": "projects/project-id/locations/location-id/products/product-id",
  "displayName": " ",
  "productCategory": "apparel-v2",
  "productLabels": [
    {
      "key": "style",
      "value": "women"
    },
    {
      "key": "category",
      "value": "dress"
    }
  ]
}

Go

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Go API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


import (
	"context"
	"fmt"
	"io"

	vision "cloud.google.com/go/vision/apiv1"
	"cloud.google.com/go/vision/v2/apiv1/visionpb"
)

// getProduct gets a product.
func getProduct(w io.Writer, projectID string, location string, productID string) error {
	ctx := context.Background()
	c, err := vision.NewProductSearchClient(ctx)
	if err != nil {
		return fmt.Errorf("NewProductSearchClient: %w", err)
	}
	defer c.Close()

	req := &visionpb.GetProductRequest{
		Name: fmt.Sprintf("projects/%s/locations/%s/products/%s", projectID, location, productID),
	}

	resp, err := c.GetProduct(ctx, req)
	if err != nil {
		return fmt.Errorf("GetProduct: %w", err)
	}

	fmt.Fprintf(w, "Product name: %s\n", resp.Name)
	fmt.Fprintf(w, "Product display name: %s\n", resp.DisplayName)
	fmt.Fprintf(w, "Product category: %s\n", resp.ProductCategory)
	fmt.Fprintf(w, "Product labels: %s\n", resp.ProductLabels)

	return nil
}

Java

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Java API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * Get information about a product.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productId - Id of the product.
 * @throws IOException - on I/O errors.
 */
public static void getProduct(String projectId, String computeRegion, String productId)
    throws IOException {
  try (ProductSearchClient client = ProductSearchClient.create()) {

    // Get the full path of the product.
    String formattedName = ProductName.format(projectId, computeRegion, productId);
    // Get complete detail of the product.
    Product product = client.getProduct(formattedName);
    // Display the product information
    System.out.println(String.format("Product name: %s", product.getName()));
    System.out.println(
        String.format(
            "Product id: %s",
            product.getName().substring(product.getName().lastIndexOf('/') + 1)));
    System.out.println(String.format("Product display name: %s", product.getDisplayName()));
    System.out.println(String.format("Product description: %s", product.getDescription()));
    System.out.println(String.format("Product category: %s", product.getProductCategory()));
    System.out.println(String.format("Product labels: "));
    for (Product.KeyValue element : product.getProductLabelsList()) {
      System.out.println(String.format("%s: %s", element.getKey(), element.getValue()));
    }
  }
}

Node.js

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Node.js API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

// Imports the Google Cloud client library
const vision = require('@google-cloud/vision');

// Creates a client
const client = new vision.ProductSearchClient();

async function getProduct() {
  /**
   * TODO(developer): Uncomment the following line before running the sample.
   */
  // const projectId = 'Your Google Cloud project Id';
  // const location = 'A compute region name';
  // const productId = 'Id of the product';

  // Resource path that represents Google Cloud Platform location.
  const productPath = client.productPath(projectId, location, productId);

  const [product] = await client.getProduct({name: productPath});
  console.log(`Product name: ${product.name}`);
  console.log(`Product id: ${product.name.split('/').pop()}`);
  console.log(`Product display name: ${product.displayName}`);
  console.log(`Product description: ${product.description}`);
  console.log(`Product category: ${product.productCategory}`);
  console.log(`Product labels: ${product.productLabels}`);
}
getProduct();

Python

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Python API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

from google.cloud import vision
from google.protobuf import field_mask_pb2 as field_mask

def get_product(project_id, location, product_id):
    """Get information about a product.
    Args:
        project_id: Id of the project.
        location: A compute region name.
        product_id: Id of the product.
    """
    client = vision.ProductSearchClient()

    # Get the full path of the product.
    product_path = client.product_path(
        project=project_id, location=location, product=product_id
    )

    # Get complete detail of the product.
    product = client.get_product(name=product_path)

    # Display the product information.
    print(f"Product name: {product.name}")
    print("Product id: {}".format(product.name.split("/")[-1]))
    print(f"Product display name: {product.display_name}")
    print(f"Product description: {product.description}")
    print(f"Product category: {product.product_category}")
    print(f"Product labels: {product.product_labels}")


שפות נוספות

C#‎: צריך לפעול לפי הוראות ההגדרה של C# ‎ בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה בנושא Google Product Search ב-Vision API עבור ‎ .NET.

PHP: עליכם לפעול לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז לעבור אל מסמכי העזר של Google Product Search ב-Vision API ל-PHP.

Ruby: צריך לפעול לפי ההוראות להגדרת Ruby בדף של ספריות הלקוח ולעיין במסמכי העזר של Vision API Google Product Search ל-Ruby.

תמונות לדוגמה של כרטיסי מוצר

למוצר יכולות להיות כמה תמונות לדוגמה משויכות. בדוגמה הבאה מוסבר איך מקבלים את כל התמונות לדוגמה שמקושרות למוצר יחיד.

REST

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה מיקום תקין. מזהי מיקום תקינים: us-west1,‏ us-east1,‏ europe-west1 ו-asia-east1.
  • PRODUCT_ID: המזהה של המוצר שמשויך לתמונה לדוגמה. המזהה הזה מוגדר באופן אקראי או מצוין על ידי המשתמש בזמן יצירת המוצר.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id/referenceImages

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id/referenceImages"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id/referenceImages" | Select-Object -Expand Content

אם הבקשה תתבצע בהצלחה, השרת יחזיר קוד סטטוס 200 OK של HTTP ואת התשובה בפורמט JSON.

הפלט שיוצג אמור להיות דומה לזה שמופיע כאן. מספר ברירת המחדל של התמונות שמוחזרות הוא 10 בכל פעם, ומוצג לחצן nextPageToken אם יש עוד עמודים.

התשובה שבהמשך מתייחסת למוצר עם שתי תמונות להשוואה. לאחת מהתמונות האלה יש תיבה תוחמת משויכת, ולתמונה השנייה אין מצולע תוחם.

אם התשובה מכילה nextPageToken, יש עוד תוצאות. אפשר לחזור על הבקשה ולהוסיף פרמטר pageToken עם הערך nextPageToken (לדוגמה, 1LqhSgZfM_uWKOxvog):

https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id/referenceImages?pageToken=1LqhSgZfM_uWKOxvog

Go

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Go API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


import (
	"context"
	"fmt"
	"io"

	vision "cloud.google.com/go/vision/apiv1"
	"cloud.google.com/go/vision/v2/apiv1/visionpb"
	"google.golang.org/api/iterator"
)

// listReferenceImages lists reference images of a product.
func listReferenceImages(w io.Writer, projectID string, location string, productID string) error {
	ctx := context.Background()
	c, err := vision.NewProductSearchClient(ctx)
	if err != nil {
		return fmt.Errorf("NewProductSearchClient: %w", err)
	}
	defer c.Close()

	req := &visionpb.ListReferenceImagesRequest{
		Parent: fmt.Sprintf("projects/%s/locations/%s/products/%s", projectID, location, productID),
	}

	it := c.ListReferenceImages(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("Next: %w", err)
		}

		fmt.Fprintf(w, "Reference image name: %s\n", resp.Name)
		fmt.Fprintf(w, "Reference image uri: %s\n", resp.Uri)
		fmt.Fprintf(w, "Reference image bounding polygons: %s\n", resp.BoundingPolys)
	}

	return nil
}

Java

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Java API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * List all images in a product.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productId - Id of the product.
 * @throws IOException - on I/O errors.
 */
public static void listReferenceImagesOfProduct(
    String projectId, String computeRegion, String productId) throws IOException {
  try (ProductSearchClient client = ProductSearchClient.create()) {

    // Get the full path of the product.
    String formattedParent = ProductName.format(projectId, computeRegion, productId);
    for (ReferenceImage image : client.listReferenceImages(formattedParent).iterateAll()) {
      // Display the reference image information.
      System.out.println(String.format("Reference image name: %s", image.getName()));
      System.out.println(
          String.format(
              "Reference image id: %s",
              image.getName().substring(image.getName().lastIndexOf('/') + 1)));
      System.out.println(String.format("Reference image uri: %s", image.getUri()));
      System.out.println(
          String.format(
              "Reference image bounding polygons: %s \n",
              image.getBoundingPolysList().toString()));
    }
  }
}

Node.js

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Node.js API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

const vision = require('@google-cloud/vision');

const client = new vision.ProductSearchClient();

async function listReferenceImage() {
  /**
   * TODO(developer): Uncomment the following line before running the sample.
   */
  // const projectId = 'Your Google Cloud project Id';

  // const formattedParent = client.productPath(projectId, location, productId);
  // const location = 'A compute region name';
  // const productId = 'Id of the product';
  const formattedParent = client.productPath(projectId, location, productId);
  const request = {
    parent: formattedParent,
  };

  const [response] = await client.listReferenceImages(request);
  response.forEach(image => {
    console.log(`image.name: ${image.name}`);
    console.log(`image.uri: ${image.uri}`);
  });
}
listReferenceImage();

Python

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Python API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

from google.cloud import vision

def list_reference_images(project_id, location, product_id):
    """List all images in a product.
    Args:
        project_id: Id of the project.
        location: A compute region name.
        product_id: Id of the product.
    """
    client = vision.ProductSearchClient()

    # Get the full path of the product.
    product_path = client.product_path(
        project=project_id, location=location, product=product_id
    )

    # List all the reference images available in the product.
    reference_images = client.list_reference_images(parent=product_path)

    # Display the reference image information.
    for image in reference_images:
        print(f"Reference image name: {image.name}")
        print("Reference image id: {}".format(image.name.split("/")[-1]))
        print(f"Reference image uri: {image.uri}")
        print("Reference image bounding polygons: {}".format(image.bounding_polys))


שפות נוספות

C#‎: צריך לפעול לפי הוראות ההגדרה של C# ‎ בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה בנושא Google Product Search ב-Vision API עבור ‎ .NET.

PHP: עליכם לפעול לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז לעבור אל מסמכי העזר של Google Product Search ב-Vision API ל-PHP.

Ruby: צריך לפעול לפי ההוראות להגדרת Ruby בדף של ספריות הלקוח ולעיין במסמכי העזר של Vision API Google Product Search ל-Ruby.

קבלת תמונה אחת לדוגמה

אפשר גם לקבל תמונה לדוגמה אחת שמקושרת למוצר.

REST

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה מיקום תקין. מזהי מיקום תקינים: us-west1,‏ us-east1,‏ europe-west1 ו-asia-east1.
  • PRODUCT_ID: המזהה של המוצר שמשויך לתמונה לדוגמה. המזהה הזה מוגדר באופן אקראי או מצוין על ידי המשתמש בזמן יצירת המוצר.
  • IMAGE_ID: המזהה של משאב התמונה של היעד.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id/referenceImages/image-id

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id/referenceImages/image-id"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/products/product-id/referenceImages/image-id" | Select-Object -Expand Content

אם הבקשה תתבצע בהצלחה, השרת יחזיר קוד סטטוס 200 OK של HTTP ואת התשובה בפורמט JSON.

הפלט שיוצג אמור להיות דומה לזה שמופיע כאן. בדוגמה של תמונת לדוגמה מוגדרים תיבות תוחמות משויכות.

Go

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Go API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


import (
	"context"
	"fmt"
	"io"

	vision "cloud.google.com/go/vision/apiv1"
	"cloud.google.com/go/vision/v2/apiv1/visionpb"
)

// getReferenceImage gets a reference image.
func getReferenceImage(w io.Writer, projectID string, location string, productID string, referenceImageID string) error {
	ctx := context.Background()
	c, err := vision.NewProductSearchClient(ctx)
	if err != nil {
		return fmt.Errorf("NewProductSearchClient: %w", err)
	}
	defer c.Close()

	req := &visionpb.GetReferenceImageRequest{
		Name: fmt.Sprintf("projects/%s/locations/%s/products/%s/referenceImages/%s", projectID, location, productID, referenceImageID),
	}

	resp, err := c.GetReferenceImage(ctx, req)
	if err != nil {
		return fmt.Errorf("GetReferenceImage: %w", err)
	}

	fmt.Fprintf(w, "Reference image name: %s\n", resp.Name)
	fmt.Fprintf(w, "Reference image uri: %s\n", resp.Uri)
	fmt.Fprintf(w, "Reference image bounding polygons: %s\n", resp.BoundingPolys)

	return nil
}

Java

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Java API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * Get info about a reference image.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productId - Id of the product.
 * @param referenceImageId - Id of the image.
 * @throws IOException - on I/O errors.
 */
public static void getReferenceImage(
    String projectId, String computeRegion, String productId, String referenceImageId)
    throws IOException {
  try (ProductSearchClient client = ProductSearchClient.create()) {

    // Get the full path of the reference image.
    String formattedName =
        ImageName.format(projectId, computeRegion, productId, referenceImageId);
    // Get complete detail of the reference image.
    ReferenceImage image = client.getReferenceImage(formattedName);
    // Display the reference image information.
    System.out.println(String.format("Reference image name: %s", image.getName()));
    System.out.println(
        String.format(
            "Reference image id: %s",
            image.getName().substring(image.getName().lastIndexOf('/') + 1)));
    System.out.println(String.format("Reference image uri: %s", image.getUri()));
    System.out.println(
        String.format(
            "Reference image bounding polygons: %s \n", image.getBoundingPolysList().toString()));
  }
}

Node.js

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Node.js API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

const vision = require('@google-cloud/vision');

const client = new vision.ProductSearchClient();

async function getReferenceImage() {
  /**
   * TODO(developer): Uncomment the following line before running the sample.
   */
  // const projectId = 'Your Google Cloud project Id';
  // const location = 'A compute region name';
  // const productId = 'Id of the product';
  // const referenceImageId = 'Id of the reference image';

  const formattedName = client.referenceImagePath(
    projectId,
    location,
    productId,
    referenceImageId
  );

  const request = {
    name: formattedName,
  };

  const response = await client.getReferenceImage(request);
  console.log(`response.name: ${response.name}`);
  console.log(`response.uri: ${response.uri}`);
}
getReferenceImage();

Python

מידע על התקנת ספריית הלקוח של Vision API Google Product Search ושימוש בה מופיע במאמר ספריות הלקוח של Vision API Google Product Search. מידע נוסף מופיע במאמרי העזרה של Vision API Google Product Search Python API.

כדי לבצע אימות ב-Google Product Search של Vision API, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

from google.cloud import vision

def get_reference_image(project_id, location, product_id, reference_image_id):
    """Get info about a reference image.
    Args:
        project_id: Id of the project.
        location: A compute region name.
        product_id: Id of the product.
        reference_image_id: Id of the reference image.
    """
    client = vision.ProductSearchClient()

    # Get the full path of the reference image.
    reference_image_path = client.reference_image_path(
        project=project_id,
        location=location,
        product=product_id,
        reference_image=reference_image_id,
    )

    # Get complete detail of the reference image.
    image = client.get_reference_image(name=reference_image_path)

    # Display the reference image information.
    print(f"Reference image name: {image.name}")
    print("Reference image id: {}".format(image.name.split("/")[-1]))
    print(f"Reference image uri: {image.uri}")
    print(f"Reference image bounding polygons: {image.bounding_polys}")


שפות נוספות

C#‎: צריך לפעול לפי הוראות ההגדרה של C# ‎ בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה בנושא Google Product Search ב-Vision API עבור ‎ .NET.

PHP: עליכם לפעול לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז לעבור אל מסמכי העזר של Google Product Search ב-Vision API ל-PHP.

Ruby: צריך לפעול לפי ההוראות להגדרת Ruby בדף של ספריות הלקוח ולעיין במסמכי העזר של Vision API Google Product Search ל-Ruby.