谷歌云应用 » v2ex » 修改新浪微博图片显示问题 - v2ex

修改新浪微博图片显示问题

By life at 2 月前

因新浪微博的图片地址改变策略,原代码无法支持,修改如下:

v2ex\templatetags\filters.py

原为:

# auto convert *.sinaimg.cn/*/*.jpg and bcs.baidu.com/*.jpg links to image tags
def sinaimg(value):
imgs = re.findall('(http://ww[0-9]{1}.sinaimg.cn/[a-zA-Z0-9]+/[a-zA-Z0-9]+.[a-z]{3})\s?', value)
for img in imgs:
value = value.replace(img, '')
baidu_imgs = re.findall('(http://(bcs.duapp.com|img.xiachufang.com|i.xiachufang.com)/([a-zA-Z0-9\.\-\_\/]+).jpg)\s?', value)
for img in baidu_imgs:
value = value.replace(img[0], '')
return value
register.filter(sinaimg)

修改为:

# auto convert *.sinaimg.cn/*/*.jpg and bcs.baidu.com/*.jpg links to image tags
def sinaimg(value):
imgs = re.findall('(http://w[a-zA-Z0-9]{2}.sinaimg.cn/[a-zA-Z0-9]+/[a-zA-Z0-9]+.[a-z]{3})\s?', value)
for img in imgs:
value = value.replace(img, '')
baidu_imgs = re.findall('(http://(bcs.duapp.com|img.xiachufang.com|i.xiachufang.com)/([a-zA-Z0-9\.\-\_\/]+).jpg)\s?', value)
for img in baidu_imgs:
value = value.replace(img[0], '')
return value
register.filter(sinaimg)

目前尚无回复