2017-02-22 32 views
-1

Я хочу сделать практику, состоящую из захвата веб-страниц в jpg, но это не просто работа (я новичок), это код, который я использую.Захват веб-изображения с помощью OpenCV

import numpy as np 
import urllib 
import cv2 


def url_to_image("http://www.hereiputweb.com"): 

    resp = urllib.urlopen("http://www.hereiputweb.com") 
    image = np.asarray(bytearray(resp.read()), dtype="uint8") 
    image = cv2.imdecode(image, cv2.IMREAD_COLOR) 

    return image 

код я получил его от ручного, но это дает мне вино в строке:

def url_to_image("http://www.hereiputweb.com"): 

Я думаю, что я указал в Интернет неправильно, очень далеко, я не должен быть .. пробовал несколько форм но ничего .. что я делаю неправильно?

С уважением

+0

def url_to_image (url = "http://www.hereiputweb.com"): resp = urllib.urlopen (url) должен работать. Всегда сообщайте точную ошибку, которую вы получаете. – MKesper

+1

Пожалуйста, просмотрите эту статью. Я помогу вам получить более эффективные ответы при использовании этого сайта. [Минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve) –

ответ

1

Существует очень краткое руководство (https://docs.python.org/3/tutorial/). Соответствующая часть будет https://docs.python.org/3/tutorial/controlflow.html#defining-functions

Таким образом, вы должны определить свою функцию следующим образом:

def url_to_image(url): 

    resp = urllib.urlopen(url) 
    image = np.asarray(bytearray(resp.read()), dtype="uint8") 
    image = cv2.imdecode(image, cv2.IMREAD_COLOR) 

    return image 

Я не проверил работы по осуществлению;)

Затем вы можете использовать функцию:

url = "http://www.hereiputweb.com" 
my_image = url_to_image(url) 
1

Проблема не в вашей реализации , это с вашей URL!

Для этого метода требуется действующий URL-адрес, который возвращает изображение. URL, который вы используете, не является изображением.

Попробуйте использовать URL-адрес изображения (например, некоторые URL-адреса, которые заканчиваются на .jpg), и он будет работать!

Помните, что URL-адрес должен быть в сети!

+0

Я думаю, что OP хочет сделать, это сделать «скриншот» данного веб-сайта. По крайней мере, это то, что я понимаю из предложения «захват веб-страниц в jpg». –

 Смежные вопросы

  • Нет связанных вопросов^_^