1. selector是乙個可獨立使用的模組,我們可以用selector類來構建乙個選擇器物件,然後呼叫它的相關方法如xpaht(), css()等來提取資料,如下
from scrapy import selector2. scrapy shell 主要用於測試scrapy專案中命令是否生效,可在bash下直接執行,body= '
』selector = selector(text=body)
title = selector.xpath('//title/text()').extract_first()
print(title)
輸出為hello world
這裡我們通過使用scrapy shell來驗證學習選擇器提取網頁資料,在linux中bash下執行命令
scrapy shell 即可進入scrapy shell命令模式
上面測試**原始碼
1. xpath和css的基本用法
#獲取的文字值,其中第乙個selector字元可以不寫2. xpath和css也可以一起用response.selector.xpath(
'//title/text()
').extract_first()response.selector.css('
title::text
').extract_first()
#獲取a標籤的href屬性值
response.xpath(
'//a/@href
').extract()
response.css(
'a::attr(href)
').extract()
#查詢屬性名稱包含image字樣的所有a標籤
response.xpath(
'//a[contains(@href, "image")]/@href
').extract()
response.css(
'a[href*=image]::attr(href)
').extract()
#查詢屬性名稱包含image字樣的所有a標籤,並且在下級img目錄下的src屬性值
response.xpath(
'//a[contains(@href, "image")]/img/@src
').extract()
response.css(
'a[href*=image] img::attr(src)
').extract()
#結合正規表示式提取所需內容
response.css(
'a::text
').re('
name\:(.*)
') #提取(.*)代表的內容
response.css(
'a::text
').re_first('
name\:(.*)
').strip() #提取第乙個(.*)代表的內容,strip()去除首尾空格
#先選上src屬性標籤注意:1. extract()方法把selector型別變為資料型別response.xpath(
'//div[@id="images"]
').css('
img::attr(src)'))
#提取相應資訊
response.xpath(
'//div[@id="images"]
').css('
img::attr(src)
')).extract() #得到多個字元值
response.xpath(
'//div[@id="images"]
').css('
img::attr(src)
')).extract_first() #得到乙個字元值
response.xpath(
'//div[@id="images"]
').css('
img::attr(src)
')).extract_first(default=''
) #如果沒提取到返回預設值
2. [@id="images"]表示用屬性來限制匹配的範圍,只查詢id屬性值等於images的div標籤,經測試中的id屬性值image必須用雙引號
Scrapy中用cookie模擬登陸新浪微博
最近想做乙個微博的搜尋頁文字分析的小專案,因為開放平台裡這個api的限制略多,決定進入爬蟲坑自己動手 之前久聞scrapy大名,嘗試了一下,抓取網頁甚是好用,避免了許多http方面的繁瑣處理 不過還是卡在了登陸這一步上 在scrapy中具體實現時,就是在爬取的spider類中,過載start req...
CheckBox使用選擇器Selector
第一步,layout檔案中設定checkbox屬性 android button null 這樣設定能解決checkbox在選中下不會顯示系統預設打勾圖示,否則設定選擇器會重疊自定義圖示 上述選中時圖示為 drawable checkbox 未選中時的圖示為 drawable checkbox bl...
Scrapy入門 Scrapy是什麼
一 scrapy 蜘蛛 scrapy是我們熟知的蜘蛛爬蟲框架,我們用蜘蛛來獲取網際網路上的各種資訊,然後再對這些資訊進行資料分析處理。所以說,scrapy是學習大資料的入門技能。scrapy是乙個為了爬取 資料,提取結構性資料而編寫的應用框架。蜘蛛作為網路爬蟲,在網上到處或定向抓取 網頁的html資...