selenium爬取数据存入mysql
先看一下我的存入数据库的函数
可以爬取到数据,也不报错,就是存不进去mysql,数据库没有数据,最后定位错误是上图红框部分未执行
错误点排查定位
- 检查sql语句是否正确:可以将sql语句在cmd终端(或者Navicat 中执行)插入一条数据,运行测试。
- 为了防止存入的数据与表字段不匹配:使用
print(type(数据))
将数据类型打印出来检查。 - 1,2检查过之后,若控制台没有报错,并且不知道哪一点出错,在不同位置多写几个
print("XXX")
,就可以定位哪一句没有执行 - 将换成就可以打印出错误
参考链接有
参考的有python用pymysql向mysql数据库写入数据时不报错但是数据库没有数据,python连接数据库插入数据库数据所碰到的坑,python写入数据到mysql数据缺失,selenium–链接MySQL数据库并将数据写到数据库, python+selenium爬取今日头条的新闻数据并存到Mysql数据库等等
报的错误有
You have an error in your SQL syntax; check the manual that corresponds to y
a float is required
not all arguments converted during string formatting
终于解决了
注释部分我测试的在我这不行
我的代码:
sqll="""INSERT INTO homes(area,floor,hallroom,price)
VALUES ("{}","{}","{}","{}") """.format(area,floor,hallroom,price)
删减了一些字段,便于大家观看
终于存入MySQL了。。。。