我正在尝试自动检索新闻文章的图像链接,并使用getimage函数编写了一个 python 模块图像处理器,它为新闻文章识别图像链接:
req = Request('http://top-channel.tv/artikull.php?id=264806&ref=fp', headers={'User-Agent': 'Mozilla/5.0'})
c = urlopen(req).read()
soup=BeautifulSoup(c)
m = soup.find('link',{'rel' : 'image_src'})
return m['href']
当我从 shell 运行时,它工作正常:
import imageprocessor
img=imageprocessor.getimage('http://top-channel.tv/artikull.php?id=264806&ref=fp','Top Channel')
img
'http://www.top-channel.tv/foto/lajme/ELBASA-NDERTIMET-07_17.jpg'
问题是当我尝试从 views.py 模块(Django 框架)以相同的方式调用此函数时,浏览器显示此错误消息:
UnicodeEncodeError at /fillimi/
'ascii' codec can't encode character '\xeb' in position 25: ordinal not in range(128)
我似乎 c = urlopen(req).read() 返回 assci 编码的字符串。我试过了:
img=img.encode('utf-8')
但这没有帮助。