scrapy是web爬取和資訊提取的框架。scrapy使用的基本流程:建立工程、定義提取條目、編寫爬蟲並提取資訊、編寫pipeline儲存提取的字段。
一. 建立工程
轉到程式工作空間,執行命令:
scrapy startproject tutorial
建立後的工程目錄結構為
tutorial/
scrapy.cfg 工程配置檔案
tutorial/ 工程的python模組
__init__.py
items.py
pipelines.py
settings.py
spiders.py/ 爬蟲存放的位置
__init__.py
……二. 定義抓取條目
抓取條目用於裝載抓取的資料,它是由scrapy.item來宣告的,它的屬性欄位是由scrapy.field來定義。具體使用如下
import scrapy
class dmozitem (scrapy.item)
title=scrapy.field()
link=scrapy.field()
des=scrapy.field()
三. 編寫爬蟲,爬取資訊
爬蟲是使用者編寫的從指定域中抓取資訊的類。**及其含義如下:
import scrapy
class dmozspider(scrapy.spider)
name="dmoz" 爬蟲的唯一標示
domain=["dmoz.org"]
""]def parse(self, response):
filename=response.url.split("/")[-2]
with open(filename, 'wb') as f:
f.write(response.body)
爬取資訊的語句:scrapy crawl dmoz,其中dmoz為爬蟲的標示。
四. 提取字段
從網頁中提取欄位的方法有多種,scrapy使用一種基於xpath或css表示式的,稱為scrapy selectors的方法。selectors可以看作是文件結構的節點物件,所以初始化的selectors就是根節點或整個文件。
selectors有四個基本的方法:
⑴. xpath()返回selectors列表,每個物件代表由xpath表示式作為引數選擇的節點。
⑵. css(),css表示式作為引數。
⑶. extract()返回選擇的字串。
⑷. re()返回由正規表示式作為引數提取的字串列表。
五. 儲存提取的資料
使用scrapy -o可以把抓取的結果儲存到檔案中,但在複雜的應用中,需要用到item pipeline,在建立工程時已建立了pipelines檔案。
Scrapy scrapy框架基礎知識
框架 django,flash,tensorflow 框架 別人做好的地基,只需要在別人的基礎上做自定義的修改。優勢是能夠協助開發者來實現快速的開發。1 新建專案 scrapy startproject 新建乙個新的爬蟲專案 2 明確目標 編寫items.py 該檔案是建立專案時已經建立好的,該py...
Python學習 學習筆記(一)
python是什麼?人們為和使用python python的缺點 如今誰在使用python 流行的p2p檔案分享系統bitjorrent是乙個python程式。eve online這款大型多人網路遊戲 massively multiplayer online game,mmog 廣泛地使用pytho...
學習opencv 學習筆記一
第二章opencv入門 主函式 include using namespacecv intmain int argc,char argv voidshowimage voidplayvideo voidontrackbarslide int pos voidcontrolvideo void cha...