2017-02-22 45 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)should work。请始终报告您收到的确切错误。 – 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(例如:以.jpg结尾的一些URL),它将起作用!

请记住,网址必须在线!

+0

我认为OP想要做的是对给定网站进行“截图”。至少是我从“以JPG格式捕捉网页”这句话中理解的。 –