网络摄像机 Python 3 错误

IP Camera Python 3 Error

我正在研究如何使用 Python 3 获取 IP 网络摄像机的流并将其显示在我的计算机上。以下代码仅适用于python 2.7

import cv2
import urllib 
import numpy as np

stream=urllib.urlopen('http://192.168.0.90/mjpg/video.mjpg')
bytes=''
while True:
    bytes+=stream.read(16384)
    a = bytes.find('\xff\xd8')
    b = bytes.find('\xff\xd9')
    if a!=-1 and b!=-1:
        jpg = bytes[a:b+2]
        bytes= bytes[b+2:]
        i = cv2.imdecode(np.fromstring(jpg, dtype=np.uint8),cv2.IMREAD_COLOR)
        cv2.imshow('i',i)
        if cv2.waitKey(1) ==27:
            exit(0)

然而,当我在 Python 3 上尝试时,出现以下错误

stream=urllib.urlopen('http://192.168.0.90/mjpg/video.mjpg') AttributeError: 'module' object has no attribute 'urlopen'

有什么解决办法吗?我尝试制作自己的缓冲区,但关于这些东西的信息不多

对于 python3 你需要 import urllib.request:

import urllib.request

stream = urllib.request.urlopen('http://192.168.0.90/mjpg/video.mjpg')