captcha庫報錯"OSError: cannot open resource"


問題描述

在win平台上python虛擬環境下使用captcha庫生成驗證碼報錯OSError: cannot open resource

代碼

from captcha.image import ImageCaptcha
from PIL import Image, ImageFont
text='1234'
image=ImageCaptcha()
captcha=image.generate_image(text)
captcha_image=Image.open(captcha)
captcha_image.show()

報錯

E:\Code\計算機視覺大作業\venv\Scripts\python.exe E:/Code/計算機視覺大作業/code/temp.py
Traceback (most recent call last):
  File "E:/Code/計算機視覺大作業/code/temp.py", line 8, in <module>
    captcha=image.generate_image(text)
  File "E:\Code\計算機視覺大作業\venv\lib\site-packages\captcha\image.py", line 226, in generate_image
    im = self.create_captcha_image(chars, color, background)
  File "E:\Code\計算機視覺大作業\venv\lib\site-packages\captcha\image.py", line 197, in create_captcha_image
    images.append(_draw_character(c))
  File "E:\Code\計算機視覺大作業\venv\lib\site-packages\captcha\image.py", line 164, in _draw_character
    font = random.choice(self.truefonts)
  File "E:\Code\計算機視覺大作業\venv\lib\site-packages\captcha\image.py", line 122, in truefonts
    for n in self._fonts
  File "E:\Code\計算機視覺大作業\venv\lib\site-packages\captcha\image.py", line 123, in <listcomp>
    for s in self._font_sizes
  File "E:\Code\計算機視覺大作業\venv\lib\site-packages\PIL\ImageFont.py", line 261, in truetype
    return FreeTypeFont(font, size, index, encoding, layout_engine)
  File "E:\Code\計算機視覺大作業\venv\lib\site-packages\PIL\ImageFont.py", line 144, in __init__
    self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine)
OSError: cannot open resource

Process finished with exit code 1

解決

在試過網上各種方案都不行后發現是因為虛擬環境的路徑中包含了中文,換成不帶中文的路徑即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM