插入MySQL时出现错误

前端之家收集整理的这篇文章主要介绍了插入MySQL时出现错误 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

_MysqL_exceptions.Warning: Incorrect string value: '\xE7\xB9\x81\xE9\xAB\x94...' for column 'html' at row 1


def getSource(theurl,moved = 0):
    if moved == 1:
        theurl = urllib2.urlopen(theurl).geturl()
    urlReq = urllib2.Request(theurl)
    urlReq.add_header('User-Agent',random.choice(agents))
    urlResponse = urllib2.urlopen(urlReq)
    htmlSource = urlResponse.read()
    return htmlSource

new_u = Url(source_url = source_url,source_url_short = source_url_short,source_url_hash = source_url_hash,html = htmlSource)
new_u.save()

为什么会这样呢?
我基本上是在下载页面的URL …然后使用Django将其保存到数据库中.

它仅在某些情况下发生.

编辑:似乎我必须将数据库设置为UTF-8?这样做的命令是什么?

最佳答案
基本上,您需要确保正确的字符串编码.例如.您提供给django的字符串不是UTF-8编码的,因此某些字符无法解析.

有关如何查找所请求页面的编码的一些有用建议,可以在这里找到:urllib2 read to Unicode

猜你在找的HTML相关文章