API Google vision не печатает возврат - PullRequest
0 голосов
/ 08 мая 2019

Я играю с некоторыми скриптами на python и пытаюсь найти, возвращает ли это изображение результаты.Однако при запуске python ничего не печатается.Я не получаю ошибку, но не могу понять это.

import io
import os

# Imports the Google Cloud client library
from google.cloud import vision
from google.cloud.vision import types

def run(annotations):
# Instantiates a client
    client = vision.ImageAnnotatorClient()

# The name of the image file to annotate
    file_name = os.path.join(
        os.path.dirname(__file__),
        'static/123456.jpg')

# Loads the image into memory
    with io.open(file_name, 'rb') as image_file:
        content = image_file.read()

        image = types.Image(content=content)

    if annotations.pages_with_matching_images:
        print('\n{} Pages with matching images retrieved'.format(
            len(annotations.pages_with_matching_images)))


    matching = annotations.pages_with_matching_images


        print matching

Я основываю работу на этих примерах

https://cloud.google.com/vision/docs/quickstart-client-libraries#client-libraries-install-python

https://cloud.google.com/vision/docs/internet-detection

1 Ответ

0 голосов
/ 08 мая 2019

Вам не хватает некоторых ключевых частей:

import io
import os

# Imports the Google Cloud client library
from google.cloud import vision
from google.cloud.vision import types

def run():   # remove the argument since you aren't using it
# Instantiates a client
    client = vision.ImageAnnotatorClient()

# The name of the image file to annotate
    file_name = os.path.join(
        os.path.dirname(__file__),
        'static/123456.jpg')

# Loads the image into memory
    with io.open(file_name, 'rb') as image_file:
        content = image_file.read()

    image = types.Image(content=content)   # dedent this

    web_detection = client.web_detection(image=image).web_detection

    """ annotations doesn't exist in your script as is...
    if annotations.pages_with_matching_images:
        print('\n{} Pages with matching images retrieved'.format(
            len(annotations.pages_with_matching_images)))
    """
    # replace above with this
    if web_detection.pages_with_matching_images:
        print('\n{} Pages with matching images retrieved'.format(
               len(web_detection.pages_with_matching_images)))

if __name__ == '__main__':
    run()

Некоторые ключевые проблемы, на которые нужно обратить внимание при редактировании сценариев учебника, - это следование вашим объектам.Вы не можете использовать объект, который вызывается в руководстве, в своем собственном сценарии, если вы сначала не создали этот объект.

...