python之爬蟲學習記錄與心得


之前在寒假的時候,學習了python基礎。在慕課網上看的python入門:http://www.imooc.com/learn/177

python進階:http://www.imooc.com/learn/317

其實好多知識都是學了忘,忘了學的。

最近因為要使用爬蟲爬去數據和照片,所以現在開始學習網絡爬蟲。

爬蟲架構:URL管理器,網頁下載器,網頁解析器
URL管理器:管理待抓取URL集合和已抓取URL集合 防止重復抓取。
URL管理器實現方法: 緩存數據庫:大公司,性能高 內存:個人,小公司 關系數據庫:永久保存URL數據或節約內存
網頁下載器:將URL對應的網頁以HTML下載到本地,用於后續分析 常見網頁下載器:Python官方基礎模塊:urllib2 第三方功能包:requests
python 3.x中urllib庫和urilib2庫合並成了urllib庫。 其中urllib2.urlopen()變成了urllib.request.urlopen() urllib2.Request()變成了urllib.request.Request()

 

Python的網頁解析器分為兩類: 1.模糊匹配—>正則表達式 2.結構化解析-> Beautiful Soup、html.parser、lxml 把整個網頁作為一個DOM樹來進行解析。(Document Objective Model)
新建一個pydev module。在里面輸入:

import bs4

print(bs4)

右鍵文檔 run as -> python as

運行出錯。打開win+R,cmd

進入命令提示符。進入python的安裝目錄,cd script

pip install beautifulsoup4

進行安裝。

安裝成功后重新運行。

 

報錯:
UserWarning: You provided Unicode markup but also provided a value for from_encoding. Your from_encoding will be ignored.
解決方法:
soup = BeautifulSoup(html_doc,"html.parser")
這一句中刪除【from_encoding="utf-8"】
原因:
python3 缺省的編碼是unicode, 再在from_encoding設置為utf8, 會被忽視掉,去掉【from_encoding="utf-8"】這一個好了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM