『壹』 Python寫爬蟲都用到什麼庫
Python爬蟲,全稱Python網路爬蟲,是一種按照一定的規則,自動地抓取萬維網信息的程序或腳本,主要用於抓取證券交易數據、天氣數據、網站用戶數據和圖片數據等,Python為支持網路爬蟲正常功能實現,內置了大量的庫,主要有幾種類型。下面本篇文章就來給大家介紹。
一、Python爬蟲網路庫
Python爬蟲網路庫主要包括:urllib、requests、grab、pycurl、urllib3、httplib2、RoboBrowser、MechanicalSoup、mechanize、socket、Unirest for Python、hyper、PySocks、treq以及aiohttp等。
二、Python網路爬蟲框架
Python網路爬蟲框架主要包括:grab、scrapy、pyspider、cola、portia、restkit以及demiurge等。
三、HTML/XML解析器?
●lxml:C語言編寫高效HTML/ XML處理庫。支持XPath。
●cssselect:解析DOM樹和CSS選擇器。
●pyquery:解析DOM樹和jQuery選擇器。
●BeautifulSoup:低效HTML/ XML處理庫,純Python實現。
●html5lib:根據WHATWG規范生成HTML/ XML文檔的DOM。該規范被用在現在所有的瀏覽器上。
●feedparser:解析RSS/ATOM feeds。
●MarkupSafe:為XML/HTML/XHTML提供了安全轉義的字元串。
●xmltodict:一個可以讓你在處理XML時感覺像在處理JSON一樣的Python模塊。
●xhtml2pdf:將HTML/CSS轉換為PDF。
●untangle:輕松實現將XML文件轉換為Python對象。
四、文本處理
用於解析和操作簡單文本的庫。
●difflib:(Python標准庫)幫助進行差異化比較。
●Levenshtein:快速計算Levenshtein距離和字元串相似度。
●fuzzywuzzy:模糊字元串匹配。
●esmre:正則表達式加速器。
●ftfy:自動整理Unicode文本,減少碎片化。
五、特定格式文件處理
解析和處理特定文本格式的庫。
●tablib:一個把數據導出為XLS、CSV、JSON、YAML等格式的模塊。
●textract:從各種文件中提取文本,比如 Word、PowerPoint、PDF等。
●messytables:解析混亂的表格數據的工具。
●rows:一個常用數據介面,支持的格式很多(目前支持CSV,HTML,XLS,TXT:將來還會提供更多!)。