以下都是自己在进行Python爬虫爬取数据的时候遇到的问题。
1 查询插入数据库数据 pymysql.err.InterfaceError: (0, '') 数据库没有连接
在dataconnect。py中测试,插入语句可以运行,然而,在dataXpathGet.py中引入dataConnect.py
后,插入语句一直报错:pymysql.err.InterfaceError: (0, '')
有点纳闷,也将语句打印出来,在MySql中测试,完美运行,没有任何问题。
后来,无奈,只能百度,发现,是数据库没有连接上,导致数据插入的时候就出问题
因此,在插入的方法中,将数据库连接的相关方法写进去,这样,在调用插入方法的时候,先进行数据库连接再进行数据插入,问题得以解决。
2 插入数据的时候,文本域中有双引号,导致数据插入不成功 ————操作的内容中有单引号(')、双引号(")、转义符时出错
在写插入语句时候,习惯性的进行sql 语句连接
sql = 'INSERT INTO topdemo(gameName, gameScore,gameFac,gameDec) VALUES ("'+gameName +'","'+gameScore +'","'+gameFac +'","'+gameDec +'")'
每行都打印了相关的信息,发现都执行了,然而,在数据库里发现,数据缺失了一条,反反复复的查看,最后,将打印出来的语句放在mysql中执行,才发现,该文本域中的出现了双引号,在存入的时候,报错。
最后的解决方法,废弃sql语句拼接的方法,采用pymysql的数据库的方法,顺利解决,即语句改为:
sql = "INSERT INTO topdemo (gameName, gameScore,gameFac,gameDec) VALUES (%s, %s, %s, %s)"
3 在导入对应文件库的时候,发现 import *(该库名称)发现,pycharm报Inspection info: This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases. Top-level and class-level items are supported better than instance items. 在pycharm中为灰色,并显示下划线,原因是pycharm找不到该库、
解决方法为:文件-设置-project interpreter ,选择右边的加号,搜索需要的库添加即可。