什么是爬蟲
一種自動(dòng)獲取網(wǎng)絡(luò)頁(yè)面內(nèi)容的程序
網(wǎng)絡(luò)爬蟲也叫作網(wǎng)絡(luò)機(jī)器人、網(wǎng)絡(luò)蜘蛛
是一種按照一定規(guī)則,自動(dòng)地抓取網(wǎng)絡(luò)信息的程序或腳本
通用爬蟲
搜索引擎的爬蟲系統(tǒng)
追求大的爬行覆蓋范圍
聚焦爬蟲
針對(duì)某種內(nèi)容爬蟲
只對(duì)特定的網(wǎng)站進(jìn)行爬取
爬蟲的一般流程
- Step1-獲取網(wǎng)頁(yè)內(nèi)容:給一個(gè)網(wǎng)址發(fā)送請(qǐng)求,該網(wǎng)址會(huì)返回整個(gè)網(wǎng)頁(yè)的數(shù)據(jù)
- Step2-解析網(wǎng)頁(yè)內(nèi)容:從整個(gè)網(wǎng)頁(yè)數(shù)據(jù)中提取想要的數(shù)據(jù)
-
Step3-保存數(shù)據(jù):數(shù)據(jù)可保存在數(shù)據(jù)庫(kù)、文件中
爬蟲能做什么
爬蟲的一般應(yīng)用場(chǎng)景
電商網(wǎng)站分析商品數(shù)據(jù)

社交網(wǎng)絡(luò)分析輿情動(dòng)態(tài)

新聞文本挖掘行業(yè)動(dòng)向

各類信息批量采集下載

爬蟲在科研中的應(yīng)用場(chǎng)景
快速追蹤最新文獻(xiàn)
? Request(獲取)+Beautiful Soup(解析)
? Biopython庫(kù)(Entrez模塊)、pymed庫(kù)
? 利用第三方庫(kù)直接下載PDF
? 調(diào)用接口實(shí)現(xiàn)自動(dòng)英譯漢
? ……
項(xiàng)目與基金熱點(diǎn)分析
? Selenium(獲取)+Beautiful Soup(解析)
? jiba等庫(kù)進(jìn)行自然語(yǔ)言分析獲得領(lǐng)域熱詞等分析
? ……
爬取生信數(shù)據(jù)
? Biopython處理多種生物信息學(xué)問(wèn)題
? pysam處理基因組序列工具
? ……
Python爬蟲的優(yōu)勢(shì)
Python是用于爬蟲的最佳工具之一
? PHP、C/C++、JAVA、Python…等語(yǔ)言均可用于構(gòu)建爬蟲
? Python抓取網(wǎng)頁(yè)文檔的接口更加簡(jiǎn)潔
? Python擁有豐富的第三方庫(kù)與爬蟲框架
? Python代碼簡(jiǎn)潔、開發(fā)效率高
? Python良好的跨平臺(tái)支持
? ……
Python爬蟲常用庫(kù)
常用的請(qǐng)求庫(kù)
Urllib庫(kù)
? Python內(nèi)置的HTTP請(qǐng)求庫(kù)
? 一系列用于操作URL的功能
Requests庫(kù)
? 模擬瀏覽器操作
? 下載網(wǎng)頁(yè)內(nèi)容
Selenium庫(kù)
? 模擬人自動(dòng)與網(wǎng)站交互
? 支持所有主流的瀏覽器
常用的解析庫(kù)
re庫(kù)
? Python內(nèi)置正則表達(dá)式模塊
? 解析速度較快
beautifulsoup庫(kù)
? 結(jié)構(gòu)化網(wǎng)頁(yè)數(shù)據(jù)
? 輕松獲取網(wǎng)頁(yè)內(nèi)容
lxml庫(kù)
? 輕松處理XML和HTML文件
? 支持XPath解析方式,解析效率非常高
常用的數(shù)據(jù)存儲(chǔ)庫(kù)、爬蟲框架
pymysql
Python 實(shí)現(xiàn)的 MySQL 客戶端操作庫(kù)
pymongo
直接連接 mongodb 數(shù)據(jù)庫(kù)進(jìn)行查詢操作
Scrapy爬蟲框架
? 爬取網(wǎng)站數(shù)據(jù)
? 提取結(jié)構(gòu)性數(shù)據(jù)
總結(jié)
爬蟲的基本概念:
- 按照一定規(guī)則,自動(dòng)獲取網(wǎng)絡(luò)頁(yè)面內(nèi)容的程序
- 獲取網(wǎng)頁(yè)內(nèi)容 、解析網(wǎng)頁(yè)內(nèi)容 、保存數(shù)據(jù)
爬蟲的應(yīng)用場(chǎng)景: - 網(wǎng)站數(shù)據(jù)分析、社交輿情分析、行業(yè)動(dòng)向洞察、信息批量采集
- 追蹤最新文獻(xiàn)、分析基金項(xiàng)目、爬取生信數(shù)據(jù)
Python爬蟲的優(yōu)勢(shì):接口簡(jiǎn)潔、第三方庫(kù)豐富、開發(fā)效率高、支持跨平臺(tái)
Python爬蟲常用庫(kù): - 請(qǐng)求庫(kù):urllib庫(kù)、Requests庫(kù)、Selenium庫(kù)
- 解析庫(kù):re庫(kù)、beautifulsoup庫(kù)、lxml庫(kù)
- 數(shù)據(jù)存儲(chǔ)庫(kù):pymysql庫(kù)、pymongo庫(kù)、Scrapy爬蟲框架
