Python之Scrapy初学问题集中(一)

纵然是瞬间 提交于 2020-03-06 01:44:33
  1. AttributeError: ‘FeedExporter’ object has no attribute ‘slot’
    解决:因为当前需要写入的文件被占用,写不进去!关闭打开的 csv文件
  2. 爬取不到数据的原因之一
    解决:没有伪装浏览器,缺少一个头文件,通过浏览器,复制一个user_Agent:{ } 的信息
    例如

步骤:
1、打开常用的浏览器
2、按下f12 键 之后刷新页面(按下f5),点击上标题栏中的 NetWork
3、将你复制的内容
交给自己设定的 header

header = {user-agent: "Mozilla/5.0 (Windows NT 10.0; WOW64) 
AppleWebKit/537.36 (KHTML, like Gecko) 
Chrome/69.0.3497.100 Safari/537.36"}

在这里插入图片描述
在这里插入图片描述
3、在scrapy爬取数据中出现UnicodeEncodeError: ‘charmap’ codec can’t encode characters in position xx: character maps to 错误

解决方法:

#连接数据库
        self.db_conn = MySQLdb.connect(db = db_name,
                                       host = host,
                                       user = user,
                                       password = password,
                                       charset = "utf8"      #不可以省略  而且这个写法是  “utf8”   不是“utf-8”
                                        )
        self.db_cursor = self.db_conn.cursor()  #得到游标

4、配备数据库时的问题
爬取数据放不到数据库中(查询字段数目和数据库表的数目不同)
MySQLdb._exceptions.OperationalError: (1136, “Column count doesn’t match value count at row 1”)

解决:查看数据库和SQL语句的字段是否匹配,还有py程序中的字段是否一致

5、MySQLdb._exceptions.DataError: (1406, “Data too long for column ‘up_date’ at row 1”)
解决:字段容量不足,就是表的字段存储空间不够,将字段的容量扩大即可

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!