Spider Scrapy 框架爬蟲

2022-08-21 04:27:11 字數 1386 閱讀 7535

scrapy 是一款常用的爬蟲框架,可以實現分布式爬蟲和高效能的爬蟲

scrapy 框架的建立實在cmd命令列下進行的:

首先要在命令列下轉到你要建立的資料夾下:

cd 目標資料夾路徑 建立的是乙個工程

建立命令:

scrapy startproject  工程名稱 (自己隨意)

建立完工程後要進入到工程資料夾下,穿件爬蟲(spider)檔案

建立爬蟲檔案:

scrapy genspider 爬蟲檔名  目標url(初始的url必須要有)

紅色部分是自己加的**,解析資料的,其他的都是建立完成後的原始**

import

scrapy

class

qiubaispider(scrapy.spider):

name = '

qiubai'#

start_urls = ['

'] # 這個url是可以的, 這個url九不能被爬取的,因為上面的限制,但是上面也可以加多個網域名稱

defparse(self, response):

#建議使用想path進行內容解析,scrapy已經整合了xpath介面

div_list = response.xpath('//div [@id="content-left"]/div') # xpath表示式 //div表示所有div [@id="content-left"] div的id

data_list =

for div in div_list:

# .extract() 可以將xpath返回的selector物件中的值取出 xpath返回的是乙個列表,列表中的元素是selector物件

# author = div.xpath('./div/a[2]/h2/text()').extract() # xpath表示式./表示的是在當前的div下 a[2] 表示這個div下的第二個a標籤

author = div.xpath('./div/a[2]/h2/text()').extract_first()

# .extract_first() == extract()[0]

接下來需要改一下配置檔案(sttings.py)這個檔案也是建立完工程後就有的,在裡面改一下第19號,user_agent 請求頭資訊 和 22行 robotstxt_obey 改成 false

最後就是執行了,執行也是需要在cmd命令列下進行執行

執行命令:

scrapy  crawl 爬蟲檔名 --nolog       # --nolog是表示不列印任何的日誌

scrapy crawl 爬蟲檔名 -o 磁碟檔名.字尾  -o 表示將返回的可迭代型別的資料寫入指定的檔案中  (操作後寫入csv檔案結果出現亂碼,暫時不知道是什麼原因)

爬取網路基本框架

0x00 理解requests庫的異常 requests庫的異常 0x01 爬取網頁的通用框架 import requests defgethtmltext url try r requests.get url,timeout 30 r.raise for status 如果狀態碼不是200,引發h...

scrapy框架全站資料爬取

每個 都有很多頁碼,將 中某板塊下的全部頁碼對應的頁面資料進行爬取 實現方式有兩種 1 將所有頁面的url新增到start urls列表 不推薦 2 自行手動進行請求傳送 推薦 yield scrapy.request url,callback callback專門用做於資料解析 下面我們介紹第二種...

使用scrapy框架爬boss直聘

boss直聘 建立scrapy 專案 scrapy startproject scrapyproject建立spider檔案 scrapy genspider s boss zhipin.com目錄1.找介面 url 2.s boss.py 3.items.py 4.pipelines.py pag...