爬虫介绍+Jupyter Notebook
什么是爬蟲
爬蟲就是通過編寫程序模擬瀏覽器上網(wǎng),然后讓其去互聯(lián)網(wǎng)上抓取數(shù)據(jù)的過程。
哪些語言可以實(shí)現(xiàn)爬蟲
1.php:可以實(shí)現(xiàn)爬蟲。php被號(hào)稱是全世界最優(yōu)美的語言(當(dāng)然是其自己號(hào)稱的,就是王婆賣瓜的意思),但是php在實(shí)現(xiàn)爬蟲中支持多線程和多進(jìn)程方面做的不好。
2.java:可以實(shí)現(xiàn)爬蟲。java可以非常好的處理和實(shí)現(xiàn)爬蟲,是唯一可以與python并駕齊驅(qū)且是python的頭號(hào)勁敵。但是java實(shí)現(xiàn)爬蟲代碼較為臃腫,重構(gòu)成本較大。
3.c、c++:可以實(shí)現(xiàn)爬蟲。但是使用這種方式實(shí)現(xiàn)爬蟲純粹是是某些人(大佬們)能力的體現(xiàn),卻不是明智和合理的選擇。
4.python:可以實(shí)現(xiàn)爬蟲。python實(shí)現(xiàn)和處理爬蟲語法簡單,代碼優(yōu)美,支持的模塊繁多,學(xué)習(xí)成本低,具有非常強(qiáng)大的框架(scrapy等)且一句難以言表的好!沒有但是!
爬蟲的分類
1.通用爬蟲:通用爬蟲是搜索引擎(Baidu、Google、Yahoo等)“抓取系統(tǒng)”的重要組成部分。主要目的是將互聯(lián)網(wǎng)上的網(wǎng)頁下載到本地,形成一個(gè)互聯(lián)網(wǎng)內(nèi)容的鏡像備份。 簡單來講就是盡可能的;把互聯(lián)網(wǎng)上的所有的網(wǎng)頁下載下來,放到本地服務(wù)器里形成備分,在對(duì)這些網(wǎng)頁做相關(guān)處理(提取關(guān)鍵字、去掉廣告),最后提供一個(gè)用戶檢索接口。
搜索引擎如何抓取互聯(lián)網(wǎng)上的網(wǎng)站數(shù)據(jù)?
門戶網(wǎng)站主動(dòng)向搜索引擎公司提供其網(wǎng)站的url
搜索引擎公司與DNS服務(wù)商合作,獲取網(wǎng)站的url
門戶網(wǎng)站主動(dòng)掛靠在一些知名網(wǎng)站的友情鏈接中
2.聚焦爬蟲:聚焦爬蟲是根據(jù)指定的需求抓取網(wǎng)絡(luò)上指定的數(shù)據(jù)。例如:獲取豆瓣上電影的名稱和影評(píng),而不是獲取整張頁面中所有的數(shù)據(jù)值。
robots.txt協(xié)議
- 如果自己的門戶網(wǎng)站中的指定頁面中的數(shù)據(jù)不想讓爬蟲程序爬取到的話,那么則可以通過編寫一個(gè)robots.txt的協(xié)議文件來約束爬蟲程序的數(shù)據(jù)爬取。robots協(xié)議的編寫格式可以觀察淘寶網(wǎng)的robots(訪問www.taobao.com/robots.txt即可)。但是需要注意的是,該協(xié)議只是相當(dāng)于口頭的協(xié)議,并沒有使用相關(guān)技術(shù)進(jìn)行強(qiáng)制管制,所以該協(xié)議是防君子不防小人。但是我們?cè)趯W(xué)習(xí)爬蟲階段編寫的爬蟲程序可以先忽略robots協(xié)議。
反爬蟲
- 門戶網(wǎng)站通過相應(yīng)的策略和技術(shù)手段,防止爬蟲程序進(jìn)行網(wǎng)站數(shù)據(jù)的爬取。
反反爬蟲
-爬蟲程序通過相應(yīng)的策略和技術(shù)手段,破解門戶網(wǎng)站的反爬蟲手段,從而爬取到相應(yīng)的數(shù)據(jù)。
Jupyter Notebook
anaconda安裝好了,直接可以Jupyter Notebook
建議大家通過安裝Anaconda來解決Jupyter Notebook的安裝問題,因?yàn)锳naconda已經(jīng)自動(dòng)為你安裝了Jupter Notebook及其他工具,還有python中超過180個(gè)科學(xué)包及其依賴項(xiàng)。
你可以通過進(jìn)入Anaconda的 https://www.anaconda.com/download 自行選擇下載;
-----
兩種方式啟動(dòng):
1、在命令行中輸入jupyter notebook
2、直接打開Anaconda,在里面打開jupter notebook
3、直接建立桌面快捷健
快捷鍵的使用
b向下插入一個(gè)cell
a向下插入一個(gè)cell
m:將cell的類型切換成markdown類型
y:將cell的類型切換成code類型
shift+enter:執(zhí)行
shift+tab:查看模塊的幫助文檔
tab:自動(dòng)補(bǔ)全
# : 一級(jí)標(biāo)題 ## : 二級(jí)標(biāo)題 ### : 三級(jí)標(biāo)題
點(diǎn)擊Folder新建一個(gè)文件夾 點(diǎn)擊Python 3 新建一個(gè)ipynb為后綴的文件 點(diǎn)擊Text File 默認(rèn)生成一個(gè)文本文件 可以修改文件名和后綴
總結(jié)
以上是生活随笔為你收集整理的爬虫介绍+Jupyter Notebook的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 20170429,上市公司2016年报全
- 下一篇: Office怎么给文档加密