轉換PDF實戰side notes 05:安裝 Python 程式庫
本篇會逐步說明 Python 如何使用他人已經編寫好的程式碼,去做一些有趣的的事情,例如製造「網頁爬蟲」程式,即是使用 Python 程式,下載互聯網上的網頁,抽取有用的資訊,並且整理成一個有意義的資料集合。
首先開啟「命令列」(一時忘了甚麼是「命令列」?請參閱這篇)。
在安裝 Python 運行程式(詳情可參閱這篇)的時候,有一頁是「Optional Features」,當中有一項目是「pip」。這個東西是用來方便管理電腦上 Python 的程式庫。程式庫是泛指其他人根據特定規範寫好的程式,在 Python 世界中稱為 package。如果作者發佈到 PyPi (Python Package Index ,https://pypi.org/ ,由一群有志去維護 Python Package 的程式開發人員協力營運,使全世界的程式開發者可以方便使用最新的 package),便可使用 pip 程式把所需的 package 下載及安裝到電腦中。
例如,想安裝「requests」這個程式庫,需要在「命令列」中以鍵盤輸入「pip install requests」,然後在鍵盤上按「Enter」。這個指令包含三部分,每個部分至少要以一個空白字元分隔,第一部分是「pip」,即是用來管理程式庫的程式,第二部分是「install」,表示使用 pip 去安裝一些程式庫,第三部分是「requests」,即是將要安裝的程式庫之名字,每個已公開發佈的 Python 程式庫都有其獨特的名字,以防混淆。
pip 程式支援每次安裝多於一個程式庫。例如網絡爬蟲程式中常用到 Requests 、PyQuery 、Pandas、lxml、hyperlink 這5個程式庫。在「命令列」中輸入「pip install requests pyquery pandas lxml hyperlink」便可以一次過把五個程式庫下載及安裝。
以下畫面是 pip 安裝程式庫過程中的截圖。
當全部程式均完成安裝,將出現此畫面。「命令列」會再次顯示當前的資資夾路徑,並回到等候讀者下一步的指示的狀態。
行文到此,讀者已經懂得使用 pip 程式去安裝各項所需要的程式庫(package),上面的示範例子,一口氣安裝了5個不同的程式庫。它們分別是 Requests 、PyQuery 、Pandas、lxml、以及 hyperlink 。
程式庫簡介
Requests:可用來下載網頁內容、向伺服器提交資料。它提供簡化的使用方法,同時亦支援較複雜的 HTTP 操作,例如 Session、Cookies 等
PyQuery:可用來抽取網頁內個別部分的內容。例如以 CSS Selector 選擇網頁內特定的元素,再抽取感興趣的內容(詳情可參閱這篇)。
Pandas:可用來處理那些可以用表格形式表達資料,方便分析資料。例如讀取和儲存機器可讀格式 CSV 等檔案。
lxml:用來讀取機器可讀格式 XML 等檔案。PyQuery 正是利用它去讀取網頁內容。
hyperlink:用來處理網頁中不同超連結(Hyperlink)的格式。
注意事項:
此系列以 Windows 7 中文版 及 Python 3.7.2 於 2019年1月28日至31日期間測試,並力求有關資料於上述期間內準確,惟市面上不同電腦作業系統或會有不相同的執行結果,希望讀者理解。如有任何使用上的困難,請詳細參閱互聯網上其他相關資源,或向其他擁有此項相關專門知識的人士或機構進一步查詢。