以上为源代码
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
其中遇到的问题
1:中文编码问题
分为4步:1.Python文件设置编码(文件前面加上 #encoding=utf-8)
2.设置数据库编码为utf-8,(charset=utf-8)
3.Python连接mysql数据库时加上参数charset=‘utf8’
4.设置python的默认编码是utf8(sys.setdefaultencoding(utf-8))
注:Python3中取消了这种写法,改用import importlib importlib.reload(sys)
2.insert语句变量插入
在sql语句中将占位符标好,然后cursor.execute()中将变量当做参数加入。(这种方式安全,使用Python字符串传参的方法后面加%,有sql注入的危险)
sql = "insert into citys(city,c_url) values(%s,%s)"
print(sql)
cursor.execute(sql,(str(l.string),str('http://bbs.tianya.cn'+l['href']).encode('utf8')))
3.错误异常处理
4.游标指针cursor的位置问题