- 非同步的爬蟲框架。
- 高效能的資料解析,持久化儲存,全棧資料的爬取,中介軟體,分布式
- 框架:就是乙個整合好了各種功能且具有很強通用性的乙個專案模板。
linux:
pip3 install scrapy
windows:
a. pip3 install wheel
d. pip3 install pywin32
e. pip3 install scrapy
- 1.新建乙個工程:scrapy startporject proname
- settings.py:當前工程的配置檔案
- spiders:爬蟲包,必須要存放乙個或者多個爬蟲檔案(.py)
- 2.cd proname
- 3.scrapy genspider spidername www.***.com
- 4.執行工程:scrapy crawl spidername
- settings.py:
- 不遵從robots協議
- ua偽裝
- 指定日誌輸出的型別:log_level = 'error'
- 1.response.xpath('xpath表示式')
- 2.scrapy中的xpath解析,在進行資料提取的時候,xpath方法返回的列表中儲存的不再是字串,
而是儲存的selector物件,相關的字串資料是儲存在selector物件的data引數中,我們必須使用
extract()/extract_first()進行字串資料的提取
- extract():可以作用到列表中的每乙個列表元素中,返回的依然是乙個列表
- extract_first():只可以作用到列表中的第乙個列表元素中,返回的是字串
- 基於終端指令的持久化儲存
- 只可以將parse方法的返回值儲存到指定字尾的文字檔案中。
- scrapy crawl spidername -o ./duanzi.csv
- 基於管道的持久化儲存
爬蟲 非同步資料寫入框架 adbapi
資料庫pymysql的commit 和execute 在提交資料時,都是同步提交至資料庫,由於scrapy框架資料的解析和非同步多執行緒的,所以scrapy的資料解析速度,要遠高於資料的寫入資料庫的速度。如果資料寫入過慢,會造成資料庫寫入的阻塞,影響資料庫寫入的效率。通過多執行緒非同步的形式對資料進...
Scarpy爬蟲框架入門
1 python環境,這裡我使用的是python3.6,建議不要使用該版本之後的版本,因為後面還需要安裝對應python版本的pywin32程式,而該程式暫時沒有python3.6後面的對應版本。2 scrapy 框架,這個直接使用pip install 進行安裝就行。3 對應python版本的py...
爬蟲框架scrapy入門(一)
這段時間一直在學爬蟲,做了一些簡單的專案,爬取資料的過程中,被封過ip,需要翻牆,為了大規模的資料採集,開始學習scrapy框架。參照的是靜覓大神的 python3網路爬蟲開發實戰 本次爬取的 是scrapy官網 建議使用anaconda的一鍵安裝,我的電腦上同時有anaconda和pycham,一...