本清單包含Python網頁抓取和資料處理相關的庫。
前幾天有私信小編要Python的學習資料,小編整理了一些有深度的Python教程和參考資料,從入門到進階的都有,檔案已經打包好了,正在學習Python的同學可以下載下傳學習學習。檔案下載下傳方式:在群檔案中下載下傳:719139688。首先把代碼撸起來!首先把代碼撸起來!首先把代碼撸起來!重要的事說三遍,哈哈。“程式設計是門手藝活”。什麼意思?得練啊。
網絡相關
- 通用
- urllib – 網絡庫(标準庫)
- requests – 網絡庫
- grab – 網絡庫(基于pycurl)
- pycurl – 網絡庫 (與libcurl綁定)
- urllib3 – 具有線程安全連接配接池、檔案psot支援、高可用的Python HTTP庫
- httplib2 – 網絡庫
- RoboBrowser – 一個無需獨立浏覽器即可通路網頁的簡單、pythonic的庫
- MechanicalSoup – 能完成自動網站互動的Python庫
- mechanize – 有狀态、可程式設計的網頁浏覽庫。
- socket – 底層網絡接口(标準庫)
- Unirest for Python – 一套支援多種語言的輕量級HTTP庫
- hyper – Python HTTP/2用戶端
- PySocks – SocksiPy持續更新并維護的版本,指出bug修複和一些其他功能,可以作為socket子產品的替代品
- 異步
- treq – 基于twisted、與requests類似的API
- aiohttp – asyncio的HTTP用戶端/伺服器 (PEP-3156)
網絡爬蟲架構
- 全能型爬蟲
- grab – 網絡爬蟲架構(基于pycurl/multicurl)
- scrapy – 網絡爬蟲架構(基于twisted)
- pyspider – 一個強力的爬蟲系統
- cola – 一個分布式爬蟲架構
- 其他
- portia – 基于Scrapy的可視化爬蟲
- restkit – Python的HTTP資源庫。允許影虎簡單的通路HTTP資源并用來建立項目
- demiurge – 基于PyQuery的微型爬蟲架構
HTML/XML解析
- lxml – 高效的HTML/XML處理庫。支援XPATH,用C語言寫成
- cssselect – 解析DOM樹和css選擇器
- pyquery – 解析DOM樹和jQuery選擇器
- BeautifulSoup – Python寫成的低效HTML/XMl處理庫
- html5lib – 根據WHATWG規範生成HTML/ XML文檔的DOM。WHATWG規範是現在浏覽器的通行規範
- feedparser – 解析RSS/ATOM資訊流
- MarkupSafe – Python的XML/HTML/XHTML安全轉義字元串工具
- xmltodict – 讓你處理XML如同處理JSON一樣
- xhtml2pdf – HTML/CSS to PDF轉化器
- untangle – 講XML文檔轉化為Python項目以簡化處理難度
- hodor – 支援lxml and cssselect的配置驅動包裝工具
- 清理
- Bleach – 清理HTML (需求html5lib)
- sanitize – 将混亂的資料世界恢複清楚
文本處理
解析及操作文本的庫
- difflib – 差異化計算工具(Python标準庫)
- Levenshtein – 快速計算編輯距離及字元串相似度
- fuzzywuzzy – 模糊字元串比比對
- esmre – 正規表達式加速器.
- ftfy – 将Unicode文本自動整理減少碎片化
- 轉換
- unidecode – Unicode轉化為ASCII文本
- 字元編碼
- uniout – 将轉移字元串輸出為可讀形式
- chardet – Python 2/3相容字元編碼檢測器
- xpinyin – 講漢字轉為拼音的庫
- pangu.py – CJK及字母數字文本間距格式化
- Slug化
- awesome-slugify – 可保留Unicode的Python slugify庫
- python-slugify – 講Unicode轉為ASCII的Python slugify庫
- unicode-slugify – unicode slugs生成工具
- pytils – 處理俄語字元串的小工具(包含pytils.translit.slugify)
- 通用解析器
- PLY – Python lex和yacc解析工具
- pyparsing – 用于生成解析器的通用架構
- 人名
- python-nameparser – 姓名解析元件
- 電話号碼
- phonenumbers – 處理、格式化、存儲、驗證全球電話号碼
- 使用者代理字元串
- python-user-agents – 浏覽器使用者代了解析器
- HTTP Agent Parser – Python HTTP代了解析器
- fake-useragent – 基于全球浏覽器統計的Python使用者代理欺騙器
- user_agent – 使用者代理資料生成器
特殊格式處理
處理特編輯特殊字元格式的庫
- tablib – 處理XLS, CSV, JSON, YAML等表格資料的庫
- textract – 從任何文檔中提取文本,支援Word, PowerPoint, PDF等
- messytables – 雜亂的表格資料解析
- rows – 支援多種格式的通用且美觀的表格資料處理器(現有CSV, HTML, XLS, TXT — 即将支援更多)
- Office
- python-docx – 閱讀,查詢和修改Microsoft Word 2007/2008 docx檔案
- xlwt / xlrd – 從Excel讀取及寫入資料和格式化資訊
- XlsxWriter – 用于穿件Excel .xlsx檔案的Python子產品
- xlwings – 一個BSD許可的庫,是Excel與Python互相調用更加簡單
- openpyxl – 可讀取、編輯Excel 2010xlsx/xlsm/xltx/xltm檔案的庫
- Marmir – 提取Python資料結構并将其轉化為表格的庫
- PDFMiner – 從PDF文檔中提取資訊的工具
- PyPDF2 – 一個分割、合并、轉換PDF檔案的庫
- ReportLab – 可以快速建立大量PDF文檔
- pdftables – 從PDF檔案中精準提取表格
- Markdown
- Python-Markdown – 一個用Python實作的John Gruber的Markdown
- Mistune – 速度最快,功能全面的Markdown純Python解析器
- markdown2 – 一個完全用Python實作的快速的Markdown
- YAML
- PyYAML – 一個Python的YAML解析器
- CSS
- cssutils – 一個Python的CSS庫
- ATOM/RSS
- feedparser – 通用的feed解析器
- SQL
- sqlparse – 一個無驗證的SQL語句分析器
- HTTP
- http-parser – C語言實作的HTTP請求/響應消息解析器
- Microformats
- opengraph – 一個用來解析Open Graph協定标簽的Python子產品
- 可移植的執行體
- pefile – 一個多平台的用于解析和處理可移植執行體(即PE)檔案的子產品
- PSD
- psd-tools – 将Adobe Photoshop PSD(即PE)檔案讀取到Python資料結構
自然語言處理
自然語言處理庫
- NLTK – Python自然語言處理領先者
- Pattern – Python的網絡挖掘子產品。他有自然語言處理工具,機器學習以及其它
- TextBlob – 為深入處理自然語言的項目提供API,參考了NLTK及其他
- jieba – 中文分詞
- SnowNLP – 漢字文本處理庫
- loso – 中文分詞庫
- genius -基于條件随機域的中文分詞
- langid.py – 獨立的語言識别系統
- Korean – 韓文形态庫
- pymorphy2 – 俄語形态分析器(詞性标注+詞形變化引擎)
- PyPLN – 用Python編寫的分布式自然語言處理通道。這個項目的目标是建立一種簡單的方法使用NLTK通過網絡接口處理大語言庫
- langdetect – Python的谷歌語言檢測庫端口
浏覽器自動化與仿真
- 浏覽器
- selenium – 自動化真實浏覽器(Chrome, Firefox, Opera, IE)
- Ghost.py – QtWebKit封裝(需求PyQT)
- Spynner – 具備AJAX支援的程式化網頁浏覽子產品
- Splinter – 通用API浏覽器模拟器(selenium web驅動,Django用戶端,Zope)
- Headless工具
- xvfbwrapper – 用于在X虛拟幀緩沖區(Xvfb)中運作顯示的Python包裝器
多程序并發
- threading – Python标準庫的多線程運作。因為python GIL限制,對于I/O密集型任務很有效,對于CPU綁定的任務沒用
- multiprocessing – 多程序标準庫
- celery – 基于分布式消息傳遞的異步任務隊列/作業隊列
- concurrent-futures – concurrent.futures子產品提供用于異步執行callable的進階接口
異步網絡程式設計庫
- asyncio – 異步I/O,時間循環,協同程式和任務(Python 3.4以上版本的Python标準庫)
- Twisted – 基于事件驅動的網絡引擎架構
- Tornado – 一個Web架構及異步網絡庫
- pulsar – Python事件驅動的并發架構
- diesel – Python的基于Greenlet的I/O架構
- gevent – 一個基于協同程式的Python網絡庫,使用greenlet
- eventlet – 有WSGI支援的異步架構
- Tomorrow – 異步代碼的魔法
隊列
- huey – 小型多線程任務隊列
- mrq – Mr. Queue – 使用redis & Gevent 的Python分布式工作任務隊列
- RQ – 基于Redis的輕量級任務隊列管理器
- simpleq – 一個簡單的,可無限擴充,基于Amazon SQS的隊列
- python-gearman – Gearman的Python API
雲計算
- picloud – 在雲端執行Python
- dominoup.com – 在雲端執行R, Python及matlab代碼
電子郵件
電子郵件處理庫
- flanker – 電子郵件及MIME處理庫
- Talon – Mailgun庫用于提取消息的報價和簽名
URL和網絡位址操作
URL和網絡位址操作庫
- URL
- furl – 一個小的Python庫,使得操縱URL簡單化
- purl – 一個簡單的不可改變的URL以及一個幹淨的用于調試和操作的API
- urllib.parse – 用于打破統一資源定位器(URL)的字元串在元件(尋址方案,網絡位置,路徑等)之間的隔斷,為了結合元件到一個URL字元串,并将“相對URL”轉化為一個絕對URL,稱之為“基本URL”(标準庫)
- tldextract – 使用公共字尾清單從URL的注冊域和子域中準确分離TLD
- 網絡位址
- netaddr – 用于顯示和操縱網絡位址的Python庫
網頁内容提取
網頁内容提取庫
- HTML頁面的文本和中繼資料
- newspaper – 用Python進行新聞提取、文章提取和内容策展
- html2text – 将HTML轉為Markdown格式文本
- python-goose – HTML内容/文章提取器
- lassie – 人性化的網頁内容檢索工具
- micawber – 一個從網址中提取豐富内容的小型庫
- sumy -一個自動彙總文本檔案和HTML網頁的子產品
- Haul – 一個可擴充的圖像爬蟲
- python-readability – arc90 readability工具的快速Python接口
- scrapely – 從HTML網頁中提取結構化資料的庫。給出了一些Web頁面和資料提取的示例,scrapely為所有類似的網頁建構一個分析器
- libextract – 從網站提取資料
- 視訊
- youtube-dl – 一個從YouTube下載下傳視訊的小型指令行工具
- you-get – Python3寫成的YouTube/Youku/Niconico視訊下載下傳工具
- Wiki
- WikiTeam – 下載下傳并儲存wkiks的工具
WebSocket
用于WebSocket的庫
- Crossbar – 開源的應用消息傳遞路由器(Python實作的用于Autobahn的WebSocket和WAMP)
- AutobahnPython – 提供了WebSocket協定和WAMP協定的Python實作并且開源
- WebSocket-for-Python – Python 2和3以及PyPy的WebSocket用戶端和伺服器庫
DNS解析
- dnsyo – 在全球超過1500個的DNS伺服器上檢查你的DNS
- pycares – ic-ares的接口。c-ares是進行DNS請求和異步名稱決議的C語言庫
計算機視覺
- OpenCV – 開源計算機視覺庫
- SimpleCV – 用于照相機、圖像處理、特征提取、格式轉換的簡介,可讀性強的接口(基于OpenCV)
- mahotas – 快速計算機圖像處理算法(完全使用 C++ 實作),完全基于 numpy 的數組作為它的資料類型
代理伺服器
- shadowsocks – 一個快速隧道代理,可幫你穿透防火牆(支援TCP和UDP,TFO,多使用者和平滑重新開機,目的IP黑名單)
- tproxy – tproxy是一個簡單的TCP路由代理(第7層),基于Gevent,用Python進行配置
雜項
- user_agent – 此子產品用于生成随機,有效的Web導航器的配置和使用者代理HTTP header
- awesome-python
- pycrumbs
- python-github-projects
- python_reference
- pythonidae