python3之scrapy數據存儲問題(MySQL)

此次我用的是python3.6,scrapy在python2.7,3.5的使用方法都不一樣因此要特別注意,python

列如 在python3.5的開發環境下scrapy 的主爬蟲文件能夠使用 from urllib import parse 而python3.6就不行,還有許多不兼容的黎姿例子還需咱們去發現mysql

通常python操做mysql數據時,都會用到MYSQLDB,目前來說MYSQLDB只在2.7版板上支持sql

因此我選擇了pymysql 和 sqlalchemy 用於scrapy爬取數據時存儲數據,但在python3.6版本中sqlalchemy效果不佳,代碼冗雜,因此我使用了pymysqlpython2.7

數據存儲的過程當中編碼的問題十分重要,下圖爲你們展現錯誤的案例:scrapy

如上圖所示我正常爬取了糗事百科某一頁的用戶名列表,結果以下:編碼

如今我引入pymysql直接進行數據存儲url

在這裏我將下載的數據強制轉換爲字符串存儲,執行完畢後查看數據表:3d

很明顯亂碼了 blog

下面我將在scrapy裏pipelines.py引入pymysql模塊並進行改進:sqlalchemy

 

 運行結果以下:

相關文章
相關標籤/搜索