永发信息网

python在网页上爬取数据然后输入mysql,python中直接输出是中文,在mysql的表中打开变成乱码了。

答案:2  悬赏:20  手机版
解决时间 2021-01-30 12:51
#这是python的代码:
cont=urllib2.urlopen(url).read()
rex=re.compile(r'\"tmall_vip_level\":(.*?)\,\"spuId\".*?\"sku\":(.*?)\,\"enableTime\".*?\"displayUserNick\":(.*?)\,\"displayUserNumId\".*?\"rateContent\":(.*?)\,\"rateDate\":(.*?)\,\"reply\"',re.S)
contents=rex.findall(cont)

for content in contents:
conn = MySQLdb.connect(host='127.0.0.1', user='root',passwd='19940513cc', db='pythonJD',port = 3306, charset = 'utf8')
cur = conn.cursor()
sql='INSERT INTO proxy(level,sku,user,content,date)values(%s,%s,%s,%s,%s)'
cur.execute(sql, (content[0],content[1].decode('gbk').encode('utf-8'),content[2].decode('gbk').encode('utf-8'),content[3].decode('gbk').encode('utf-8'),content[4]))
print 'success connect'
conn.commit()
cur.close()
conn.close()

mysql和python中所有的都设置为utf8了。是要修改数据库配置文件嘛,在哪改呢....
最佳答案
你如果是用 MySQLdb 操作的数据库,那么执行完sql语句后需要commit。例:
conn = MySQLdb.connect(user='xxx', db='xxx', passwd='xxx', host='127.0.0.1', use_unicode=True, charset='utf8')
cur = conn.cursor()
cur.execute('update table set xxx=xxx')
conn.commit()
cur.close()
conn.close()
全部回答
抓出来的数据转码
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么牡丹鹦鹉和虎皮鹦鹉都喜欢咬对方的羽毛
洁蓝干洗地址在什么地方,想过去办事
高电压技术的意思是什么啊?知道的请说下!
平顺超市地址在什么地方,我要处理点事
兰兰干洗(武胜路蓉强文具斜对面)地址好找么,
利维爱多少钱一盒
保险超市地址在哪,我要去那里办事
棉连的意思是什么啊?知道的请说下!
蕾奇尔洗衣(河滨南路与西湖路交叉口西)地址在
三利超市地址有知道的么?有点事想过去
缺点和不足怎么写
丽清干洗店(210国道阳光烤鱼旁)地址好找么,
已知一个正数x的两个平方根分别是a+1和a+3,求
鹦鹉盞的意思是什么啊?知道的请说下!
准生证办理需要哪些资料
推荐资讯
唐二代可以只升级刹车,不升级轮毂吗
杏田家居(临澧专卖店)地址好找么,我有些事要
什么是高科技时代的轨道交通工具
问:成语第一个字是困,最后面是一个斗字,请
男,34岁。饮啤酒后右膝关节红肿疼痛1天。3个
【斗的多音字】斗的多音字组词
可能发生液化的土层有()层。A.1B.2C.3D.4
骑士和王子
国家级绿色生态示范城区有哪些?
有谁知道怎么查一个车牌号没有被选
散漫的意思是什么啊?知道的请说下!
范仲淹(989-1052)的意思是什么啊?知道的请说
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?