Scrapy框架爬蟲學習 3

2021-08-20 18:00:05 字數 1476 閱讀 1916

繼上一節課爬取到了資料之後,這一節將資料入庫。

因為python自帶了sqlite/seklait/資料庫,直接用就可以。

1. 新建 sqlite 資料庫

在pycharm下進入terml,然後進入ipython模式,之後

import sqlite3

zufang = sqlite3.connect('zufang.sqlite')   

create_table = 'create table zufang ( title varchar(512), money varchar(128) )'

zufang.execute(create_table)    #實際上就是這個語句

再退出  term,就可以看到,建立了資料庫。可以在database中看到這個資料中的表單以及字段。

2. 爬取來的資料插入資料庫

這裡分為兩個步驟:1)資料通過items傳入pipelines

2)通過pip傳入資料庫

1) 先看傳入pip。

首先,要更改settings.py  將注釋掉的items,去注釋。注意這裡名字和數字。

然後去items裡面把類改寫一下

同時在爬蟲指令碼中,我們進行引入該item類

這裡注意引用時候的問題,最終我把item指令碼複製過去通資料夾目錄下  from ..items import 來做的(講道理有更好的解決辦法,之後再看)

這裡改寫一點點,然後在ter中執行爬蟲即可。可以發現這時候已經傳到pip裡面了(因為已經執行了pip中的print語句)

剩下的明天寫。

2) 從pip入資料庫

這裡只需要改pipeline指令碼中的**即可,將資料入庫。

這裡共定義了3個函式,其中第二個是從iitem傳入函式,這個函式之前就寫好了

只需要寫第乙個鏈結和第三個關閉函式。

之後就可以看到資料庫中插入了我們爬來的資料

整個框架就做完了。

Scrapy爬蟲框架學習

目錄 五大模組 spider itempipeline schedule engine 四個配置引數 三個物件 常用屬性 常用方法 response 常用屬性 常用方法 item 兩類中介軟體 middleware spidermiddleware 解析html,產生爬取請求和資料 流水線處理資料,...

爬蟲scrapy框架學習(三)

3.示例2redisspider a.使用方法 它與示例1只有乙個地方不同,就是將start url存入redis中,如下 b.總結 該示例很簡單,只是將start url存入redis key中,就可實現分布式爬蟲,多台電腦共同完成乙個爬蟲,資料不會重複 4.示例3rediscrawlspider...

scrapy爬蟲框架

作者經過幾周的python爬蟲實踐之後,深入學習了一下scrapy這個爬蟲框架,現將一些基本知識和 總結整理一下,以備後查。2.scrapy的命令列使用 這部分網上很多部落格都有總結,不需要背,理解會用主要的命令 startproject crawl fetch list genspider.即可,...