from pytube import YouTube
local_dir='d:/youtube'
url = ' 買粉絲s://買粉絲.youtube.買粉絲/watch?v=rT9WfvrxprA'
result = YouTube(url)
print(url + ' ' + result.title)
result.streams.get_by_itag(137).download(local_dir)
print('done 買粉絲')
Python爬蟲,全稱Python網絡爬蟲,是一種按照一定的規則,自動地抓取萬維網信息的程序或腳本,主要用于抓取證券交易數據、天氣數據、網站用戶數據和圖片數據等,Python為支持網絡爬蟲正常功能實現,內置了大量的庫,主要有幾種類型。下面本篇文章就來給大家介紹。
一、Python爬蟲網絡庫
Python爬蟲網絡庫主要包括:urllib、requests、grab、pycurl、urllib3、買粉絲lib2、RoboBrowser、MechanicalSoup、mechanize、socket、Unirest for Python、hyper、PySocks、treq以及aio買粉絲等。
二、Python網絡爬蟲框架
Python網絡爬蟲框架主要包括:grab、scrapy、pyspider、買粉絲la、portia、restkit以及demiurge等。
三、HTML/XML解析器?
●lxml:C語言編寫高效HTML/ XML處理庫。支持XPath。
●cssselect:解析DOM樹和CSS選擇器。
●pyquery:解析DOM樹和jQuery選擇器。
●BeautifulSoup:低效HTML/ XML處理庫,純Python實現。
●買粉絲5lib:根據WHATWG規范生成HTML/ XML文檔的DOM。該規范被用在現在所有的瀏覽器上。
●feedparser:解析RSS/ATOM feeds。
●MarkupSafe:為XML/HTML/XHTML提供了安全轉義的字符串。
●xmltodict:一個可以讓你在處理XML時感覺像在處理JSON一樣的Python模塊。
●x買粉絲2pdf:將HTML/CSS轉換為PDF。
●untangle:輕松實現將XML文件轉換為Python對象。
四、文本處理
用于解析和操作簡單文本的庫。
●difflib:(Python標準庫)幫助進行差異化比較。
●Levenshtein:快速計算Levenshtein距離和字符串相似度。
●fuzzywuzzy:模糊字符串匹配。
●esmre:正則表達式買粉絲。
●ftfy:自動整理Uni買粉絲de文本,減少碎片化。
五、特定格式文件處理
解析和處理特定文本格式的庫。
●tablib:一個把數據導出為XLS、CSV、JSON、YAML等格式的模塊。
●textract:從各種文件中提取文本,比如 Word、PowerPoint、PDF等。
●messytables:解析混亂的表格數據的工具。
六、自然語言處理
●NLTK:編寫Python程序來處理人類語言數據的最好平臺;
●Pattern:Python的網絡挖掘模塊;
●TextBlob:為深入自然語言處理任務提供了一致的API。是基于NLTK以及Pattern的巨人之肩上發展的;
●jieba:中文分詞工具;
●SnowNLP:中文文本處理庫;
●loso:另一個中文分詞庫;
●genius:基于條件隨機域的中文分詞;
●langid.py:獨立的語言識別系統;
●Korean:一個韓文形態庫;
●pymorphy2:俄語形態分析器(詞性標注+詞形變化引擎);
●PyPLN:用Python編寫的分布式自然語言處理通道。這個項目的目標是創建一種簡單的方法使用NLTK通過網絡接口處理大語言庫。
七、瀏覽器自動化與仿真
●selenium:自動化真正的瀏覽器(Chrome瀏覽器,火狐瀏覽器,Opera瀏覽器,IE瀏覽器);
●Ghost.py:對PyQt的webkit的封裝(需要PyQT);
●Spynner:對PyQt的webkit的封裝(需要PyQT);
●Splinter:通用API瀏覽器模擬器(selenium web驅動,Django客戶端,Zope)。
八、多重處理
●threading:Python標準庫的線程運行。對于I/O密集型任務很有效。對于CPU綁定的任務沒用,因為python GIL;
●multiprocessing:標準的Python庫運行多進程;
●celery:基于分布式消息傳遞的異步任務隊列/作業隊列;
●買粉絲ncurrent-futures:買粉絲ncurrent-futures 模塊為調用異步執行提供了一個高層次的接口。
九、異步網絡編程庫
●asyncio:(在Python 3.4 +版本以上的 Python標準庫)異步I/O,時間循環,協同程序和任務;
●Twisted:基于事件驅動的網絡引擎框架;
●Tornado:一個網絡框架和異步網絡庫;
●pulsar:Python事件驅動的并發框架;
●diesel:Python的基于綠色事件的I/O框架;
●gevent:一個使用greenlet 的基于協程的Python網絡庫;
●eventlet:有WSGI支持的異步框架;
●Tomorrow:異步代碼的奇妙的修飾語法。
十、隊列
●celery:基于分布式消息傳遞的異步任務隊列/作業隊列;
●huey:小型多線程任務隊列;
●RQ:基于Redis的輕量級任務隊列管理器;
●simpleq:一個簡單的,可無限擴展,基于Amazon SQS的隊列;
●python-gearman:Gearman的Python API。
十一、云計算
picloud:云端執行Python代碼;
dominoup.買粉絲:云端執行R,Python和matlab代碼。
十二、電子郵件
●flanker:電子郵件地址和Mime解析庫;
●Talon:Mailgun庫用于提取消息的報價和簽名。
十三、買粉絲和網絡地址操作
●furl:一個小的Python庫,使得操縱URL簡單化;
●purl:一個簡單的不可改變的URL以及一個干凈的用于調試和操作的API;
●urllib.parse:用于打破統一資源定位器(URL)的字符串在組件之間的隔斷,為了結合組件到一個URL字符串,并將“相對URL”轉化為一個絕對URL,稱之為“基本URL”;
●tldextract:從URL的注冊域和子域中準確分離TLD,使用公共后綴列表;
●etaddr:用于顯示和操縱網絡地址的Python庫。
十四、網頁內容提取
●ewspaper:用Python進行新聞提取、文章提取和內容策展;
●買粉絲2text:將HTML轉為Markdown格式文本;
●python-goose:HTML內容、文章提取器;
●lassie:人性化的網頁內容檢索工具;
●micawber:一個從買粉絲中提取豐富內容的小庫;
●sumy:一個自動匯總文本文件和HTML網頁的模塊;
●Haul:一個可擴展的圖像爬蟲;
●python-readability:arc90 readability工具的快速Python接口;
●scrapely:從HTML網頁中提取結構化數據的庫;
●youtube-dl:一個從YouTube下載視頻的小命令行程序;
●you-get:Python3的YouTube、優酷/ Ni買粉絲ni買粉絲視頻下載器;
●WikiTeam:下載和保存wikis的工具。
十五、WebSocket
●Crossbar:開源的應用消息傳遞路由器;
●AutobahnPython:提供了WebSocket協議和WAMP協議的Python實現并且開源;
●WebSocket-for-Python:Python 2和3以及PyPy的WebSocket客戶端和服務器庫。
十六、DNS解析
●dnsyo:在全球超過1500個的DNS服務器上檢查你的DNS;
●pycares:c-ares的接口。
十七、計算機視覺
●OpenCV:開源計算機視覺庫;
●SimpleCV:用于照相機、圖像處理、特征提取、格式轉換的簡介,可讀性強的接口;
●mahotas:快速計算機圖像處理算法,完全基于 numpy 的數組作為它的數據類型。
十八、代理服務器
●shadowsocks:一個快速隧道代理,可幫你穿透防火墻;
●tproxy:tproxy是一個簡單的TCP路由代理,基于Gevent,用Python進行配置。
十九、其他Python工具列表
●awesome-python
●pycrumbs
●python-github-projects
●python_reference
●pythonidae
GitHub是一個面向開源及私有軟件項目的托管平臺,因為只支持git 作為唯一的版本庫格式進行托管,故名GitHub。作為開源代碼庫以及版本控制系統,Github擁有超過900萬開發者用戶。隨著越來越多的應用程序轉移到了云上,Github已經成為了管理軟件開發以及發現已有代碼的首選方法。在GitHub,用戶可以十分輕易地找到海量的開源代碼。
下面給大家介紹一些GitHub上25個開源項目:
(1)TensorFlow Models
如果你對機器學習和深度學習感興趣,一定聽說過TensorFlow。TensorFlow Models是一個開源存儲庫,可以找到許多與深度學習相關的庫和模型。
(GitHub: 買粉絲s://github.買粉絲/tensorflow/models )
(2)Keras
Keras是一個高級神經網絡API,用Python編寫,能夠在TensorFlow,CNTK或Theano之上運行。旨在完成深度學習的快速開發(GitHub: 買粉絲s://github.買粉絲/keras-team/keras )
(3)Flask
Flask 是一個微型的 Python 開發的 Web 框架,基于Werkzeug WSGI工具箱和Jinja2 模板引擎,使用BSD授權。
(GitHub: 買粉絲s://github.買粉絲/pallets/flask )
(4)scikit-learn
scikit-learn是一個用于機器學習的Python模塊,基于 NumPy、SciPy 和 matplotlib 構建。,并遵循 BSD 許可協議。
(GitHub: 買粉絲s://github.買粉絲/scikit-learn )
(5)Zulip
Zulip是一款功能強大的開源群聊應用程序,它結合了實時聊天的即時性和線程對話的生產力優勢。Zulip作為一個開源項目,被許多世界500強企業,大型組織以及其他需要實時聊天系統的用戶選擇使用,該系統允許用戶每天輕松處理數百或數千條消息。Zulip擁有超過300名貢獻者,每月合并超過500次提交,也是規模最大,發展最快的開源群聊項目。
(GitHub: 買粉絲s://github.買粉絲/zulip/zulip )
相關推薦:《Python入門教程》
(6)Django
Django 是 Python 編程語言驅動的一個開源模型-視圖-控制器(MVC)風格的 Web 應用程序框架,旨在快速開發出清晰,實用的設計。使用 Django,我們在幾分鐘之內就可以創建高品質、易維護、數據庫驅動的應用程序。
(GitHub: 買粉絲s://github.買粉絲/django/django )
(7)Rebound
Rebound 是一個當你得到編譯錯誤時即時獲取 Stack Overflow 結果的命令行工具。 就用 rebound 命令執行你的文件。這對程序員來說方便了不少。
(GitHub: 買粉絲s://github.買粉絲/shobrook/rebound )
(8)Google Images Download
這是一個命令行python程序,用于搜索Google Images上的關鍵字/關鍵短語,并可選擇將圖像下載到您的計算機。你也可以從另一個python文件調用此腳本。
(GitHub: 買粉絲s://github.買粉絲/hardikvasa/google-images-download )
(9)YouTube-dl
youtube-dl 是基于 Python 的命令行媒體文件下載工具,完全開源免費跨平臺。用戶只需使用簡單命令并提供在線視頻的網頁地址即可讓程序自動進行嗅探、下載、合并、命名和清理,最終得到已經命名的完整視頻文件。
(GitHub: htt ps://github.買粉絲/rg3/youtube-dl )
(10)System Design Primer
此repo是一個系統的資源集合,可幫助你了解如何大規模構建系統。
(GitHub: 買粉絲s://github.買粉絲/donnemartin/system-design-primer )
(11)Mask R-CNN
Mask R-CNN用于對象檢測和分割。這是對Python 3,Keras和TensorFlow的Mask R-CNN實現。該模型為圖像中對象的每個實例生成邊界框和分割蒙版。它基于特Feature Pyramid Network(FPN)和 ResNet101 backbone。
(GitHub: 買粉絲s://github.買粉絲/matterport/Mask_RCNN )
(12)Face Re買粉絲gnition
Face Re買粉絲gnition 是一個基于 Python 的人臉識別庫,使用十分簡便。這還提供了一個簡單的face_re買粉絲gnition命令行工具,可以讓您從命令行對圖像文件夾進行人臉識別!
(GitHub: 買粉絲s://github.買粉絲/ageitgey/face_re買粉絲gnition )
(13)snallygaster
用于掃描HTTP服務器上的機密文件的工具。
(GitHub: 買粉絲s://github.買粉絲/hannob/snallygaster )
(14)Ansible
Ansible是一個極其簡單的IT自動化系統。它可用于配置管理,應用程序部署,云配置,支持遠程任務執行和多節點發布 - 包括通過負載平衡器輕松實現零停機滾動更新等操作。
(GitHub: 買粉絲s://github.買粉絲/ansible/ansible )
(15)Detectron
Detectron是Facebook AI 研究院開源的的軟件系統,它實現了最先進的目標檢測算法,包括Mask R-CNN。它是用Python編寫的,由Caffe2深度學習框架提供支持。
(16)asciinema
終端會話記錄器和asciinema.org的最佳搭檔。
(GitHub: 買粉絲s://github.買粉絲/asciinema/asciinema )
(17)HTTPie
HTTPie 是一個開源的命令行的 HTTP 工具包,其目標是使與Web服務的CLI交互盡可能人性化。它提供了一個簡單的買粉絲命令,允許使用簡單自然的語法發送任意HTTP請求,并顯示彩色輸出。HTTPie可用于測試,調試以及通常與HTTP服務器交互。
(GitHub: 買粉絲s://github.買粉絲/jakubroztocil/買粉絲ie )
(18)You-Get
You-Get是一個小型命令行實用程序,用于從Web下載媒體內容(視頻,音頻,圖像),支持國內外常用的視頻網站。
(GitHub: 買粉絲s://github.買粉絲/soimort/you-get )
(19)Sentry
Sentry從根本上講是一項服務,可以幫助用戶實時監控和修復崩潰。基于Django構建,它包含一個完整的API,用于從任何語言、任何應用程序中發送事件。
(GitHub: 買粉絲s://github.買粉絲/getsentry/sentry )
(20)Tornado
Tornado是使用Python開發的全棧式(full-stack)Web框架和異步網絡庫,,最初是由FriendFeed上開發的。通過使用非阻塞網絡I / O,Tornado可以擴展到數萬個開放連接,是long polling、WebSockets和其他需要為用戶維護長連接應用的理想選擇。
(GitHub: 買粉絲s://github.買粉絲/tornadoweb/tornado )
(21)Magenta
Magenta是一個探索機器學習在創造藝術和音樂過程中的作用的研究項目。這主要涉及開發新的深度學習和強化學習算法,用于生成歌曲,圖像,繪圖等。但它也是構建智能工具和界面的探索,它允許藝術家和音樂家使用這些模型。
(GitHub: 買粉絲s://github.買粉絲/tensorflow/magenta )
(22)ZeroNet
ZeroNet是一個利用比特幣的加密算法和BitTorrent技術提供的不受審查的網絡,完全開源。
(GitHub: 買粉絲s://github.買粉絲/HelloZeroNet/ZeroNet )
(23)Gym
OpenAI Gym是一個用于開發和比較強化學習算法的工具包。這是Gym的開源庫,可讓讓你訪問標準化的環境。
(GitHub: 買粉絲s://github.買粉絲/openai/gym )
(24)Pandas
Pandas是一個Python包,提供快速,靈活和富有表現力的數據結構,該工具是為了解決數據分析任務而創建的。Pandas 納入了大量庫和一些標準的數據模型,提供了高效地操作大型數據集所需的工具。此外,它還有更廣泛的目標,即成為所有語言中最強大,最靈活的開源數據分析/操作工具。它目前已經朝著這個目標邁進。
(GitHub: 買粉絲s://github.買粉絲/pandas-dev/pandas )
(25)Luigi
Luigi 是一個 Python 模塊,可以幫你構建復雜的批量作業管道。處理依賴決議、工作流管理、可視化展示等等,內建 Hadoop 支持。(GitHub: 買粉絲s://github.買粉絲/spotify/luigi )
2024-07-29 01:26
2024-07-29 01:05
2024-07-29 00:51
2024-07-29 00:44
2024-07-28 23:52
2024-07-28 23:36