Python學習第九天(Scrapy框架)

2021-09-05 10:04:49 字數 1264 閱讀 7750

框架:  就是乙個半成品。

作用: 提高了專案的開發效率

由5部分組成

1) engine(引擎): 它是資料的指揮官,負責控制其它部分的

2) scheduler(排程器): 負責將engine提供的url排成乙個佇列(去重)

3) spider(爬蟲): 由程式設計師自己寫的**放在spider資料夾中。主要的功能就是http response的解析(提取資料),將提取出來的資料傳遞給引擎。

5) item pipeline(管道): 負責將engine傳遞出來的資料,進行處理(儲存)。

注意在網頁中提取資料主要用的是xpath方法
表示式

描述//

從匹配選擇的當前節點(html中的乙個標籤)選擇文件中的節點,而不考慮他們的位置

篩選列表中的元素(可以對屬性值進行限制)

標籤的名字(nodename)

選擇此節點的所有子節點

.選取當前節點

..選取當前節點的父節點

@選取屬性

xpath中內建的方法

text()   取出元素內的文字資訊

##直接列印response中的資訊(利用response物件獨有的屬性body)

# print(response.body)

## response 是htmlresponse類物件

# print(type(response))

## 利用response類自帶的xpath方法篩選資訊,返回的是selectorlist

##類,selectorlist內建了乙個方法extract該方法返回的是乙個列表

# infos = response.xpath("//tr[@class='even']/td/a/text()")

## 檢視利用xpath方法篩選出來的資訊的型別

#print(type(infos))

## 利用response類自帶的xpath方法篩選資訊,返回的是selectorlist

##類,selectorlist內建了乙個方法extract該方法返回的是乙個列表

infos = response.xpath("//tr[@class='even']/td/a/text() | //tbody/tr[@class='odd']/td/a/text()").extract()

## 檢視extract方法返回的資料型別以及結果

print(type(infos))

print(infos)

python學習 第九天

在下這廂有禮了 爬蟲簡單實現 coding utf 8 import urllib def gethtml url page urllib.urlopen url html page.read returnhtml html gethtml print html l urllib 模組提供了讀取we...

python學習第九天

一.檔案的擴充套件模式 擴充套件模式 配合開啟模式的輔助模式,自己單獨不能使用 如 和 b 1.先讀後寫 r 2.先寫後讀 r 3.可讀可寫 w 4.可讀可寫 a 在寫入內容時,會強制把游標移動到最後 二.read seek tell 三個函式的使用 utf 8編碼格式下 預設乙個中文三個位元組 乙...

python學習第九天

函式 函式 function 對功能或者動作的封裝 定義 可以幫我們把一段公共的 提取出來.函式的書寫格式 def 函式名 函式體return 返回值,可在後面加入內容 如 return 內容1 內容2 函式的呼叫格式 函式名 引數 引數 函式在執行過程中給函式傳遞的資訊 形參 函式在宣告的時候寫的...