fbpx
Python初學程式技術問題程式新手

Python初學總整理 第7講:爬蟲實例解析 – 以爬取臉書社團為案例,使用 Selenium 來進行網頁模擬爬蟲

適合本篇閱讀的人:   剛接觸Python   剛入門爬蟲   範例流程: 爬取python Taiwan FB社團,在社團內部自動垂直瀏覽頁面。爬取貼文時間,併計算貼文數量。 https://gist.github.com/dreamline2/6df1c4ff4e00e36404669b1437b45820 第一部分:介紹各種python內建套件模塊   1. Selenium:程序可以直接驅動瀏覽器進行各種網站操作。       2. Webdriver:真實的模擬人對於瀏覽器的操作行為。  3. BeautifulSoup:最主要的功能是從網頁抓取數據。  4. numpy:多維數據集數學函式庫。 5.time:獲取當前的時間,操作時間和日期,從串行讀取時間及格式化時間為字符串。 …
celia
February 18, 2020
Python初學程式

【線上課程心得】用一個假日進行 Python 資料分析視覺化實戰 By johnson

老師算是我難得一見的口齒清晰、口條極佳的老師,讓課程及操作在行雲流水般優美平順的過程中進行著,也讓學習的邏輯完全環環相扣,讓每一章節及單元都緊密的接續,更加深我的學習思維與效果,而且同步實作自己資料時也還算完全跟的上,算是真的實用。 課程內容雖然偏向入門,但不同於其他入門課程一般那麼多過於基本的陳述(上起課來不會沉悶),反而老師已將主要會用到的入門內容統整出來在第一章節,讓完全新手也能快速理解python的基礎語法與迴圈邏輯等方面。進入第二及第三節章算是完全的實作單元,介紹了資料處理及分析最主要使用的套件: pandas、matplotlib、seaborn三個主流套件,過程算是一步步帶著大家做,而且內容非常豐富且也夠用。建議各位同學可以用自己手邊的資料或是下載一些有一點複雜度的資料,照著老師的單元照著做,會做出來意想不到的結果(我自己是去下載了經濟部主計處的CPI歷年資料)。若覺得跟不上單元的速度還可以暫停直到自己run出來再繼續,完全可以照自己速度來安排上課。 對於資料新手的我來說,這門課還是算有一點跟不上,須要重複上兩次課才懂,實作也才算跟上了,但上完的成就感很大,對於python也更有信心。希望未來老師能再針對廣度及深度出不同的課程,尤其是若能出主題式課程更棒,比如:金融期貨上的應用、股指期貨上AI的應用等。整體而言算是物超所值的python主題式入門課程,值得大家一起加入學習的行列。   Udemy 線上課程:【增加職場技能】用一個假日進行 Python 資料分析視覺化實戰 成為快樂學習員:為推廣與提升學習 Python 資料分析之環境,提供學習員鼓勵計畫。分享本篇文章做推薦學習至臉書動態牆並來訊「快樂學程式」粉專分享你學習該堂課的動機與該貼文連結,學程式提供八折優惠折扣。被分享數有達10個以上進行申請(oh!你的學習意願有目共睹,必須給你拍拍手),更提供你六折優惠!讓快樂學程式幫助你快樂學習,提升職場競爭力:)   心得出處[email protected]
學程式助教
February 15, 2020
Python

Python常見的檔案處理應用

在實務上,常常有機會需要將資料寫入或讀出檔案,而Python也提供了許多相關的模組(Module)讓開發人員可以容易的進行檔案的操作。 透過本篇的教學,各位除了能夠利用Python進行基本的檔案操作外,也有能力讀取及寫入常見的資料交換格式檔案,重點包含: 基本的檔案操作 JSON檔案操作(JSON Files) CSV檔案操作(CSV Files) ZIP檔案操作(Zip Files)   一、基本的檔案操作 首先,先來看一下我們目前專案的檔案結構,如下: 現在就來分別介紹幾個Python常用的檔案操作方式:   檢查檔案是否存在 利用 Path 模組(Module)中的exists()方法,來檢查目錄下是否含有特定的檔案,如下範例: 取得檔案資訊 利用 Path 模組(Module)中的stat()方法即可取得目錄下特定檔案的資訊,如下範例: 執行結果 從執行結果可以看到包含了檔案的大小 st_size、修改時間 st_mtime 及建立時間 st_ctime 等。 重新命名檔案…
學程式助教
February 14, 2020
初心者也能上手的版本控制基本指南工程思維

初學者也能上手版控的基本指南

本篇大綱: 何謂版本控制? 版本控制的類型和用途 Git介紹和使用者 Git vs Github vs Gitlab 何謂版本控制? 版本控制系統是一種軟件工程的開發技巧,可以通過這個系統讓每位成員的軟件版本可以方便同步和維護管理 (不然要用電子郵件或其他工具傳送和管理十分麻煩,尤其是程序又常常會有不同版本修改的問題!) 在沒有版本控制系統時,我們常會在編輯檔案前複製一個備份,或者在更新檔案後產生許多重複檔案,非常不便且難以維護。 因此,使用版本控制系統的需求就這樣產生啦! 版本系統類型和用途 舉例來說:A&B共同開發專案,有兩種版本控制方法: 1.中央式: 伺服器維護一個最新版本的專案,當要修改專案的時候,就從伺服器上下載專案,改完再上傳。 為了保證伺服器上永遠是最新的,就需要一直保持網路暢通;一旦中央伺服器壞了,一切都將結束。 CVS是最初的版本控制系統,SVN是當前最流行的集中式版本控制系統。上述兩個都是開源,免費的。 2.分散式: 一開始,A本地電腦有一個倉庫,用於存儲“ A對專案的修改”(B也一樣)。 需要更新整個專案的時候,A,B之間就互相點擊“修改”,然後本地倉庫就保存了“所有人該專案的修改”。 因此,每個人都有最新版的專案,斷網斷電也不用擔心。…
celia
February 11, 2020
Python

有效管理Python套件(Package)的工具及概念

在實務上發展應用程式時,除了可以自行開發模組(Module)與套件(Package)外,很多時候會安裝使用第三方套件(Package),來提升專案的開發效率。 所以本文將介紹如何在PyPI中搜尋所需的Python套件(Package),並且以Windows作業系統及Visual Studio Code開發工具為例,瞭解Python強大的套件管理工具,讓您有效管理專案中的Python套件(Package)。 由於是在Visual Studio Code的Terminal視窗中下指令的方式來操作,所以使用命令提示字元視窗,也可以達到相同的效果。本文重點包含: PyPI(Python Package Index) pip套件管理工具 pipenv套件管理工具 Pipfile及Pipfile.lock檔案 一、PyPI(Python Package Index) PyPI是一個套件庫,位於https://pypi.org,其中包含了各式各樣的Python套件(Package),在開發應用程式的過程中,可以到這邊來搜尋是否有所需的功能套件(Package),安裝後透過引用的方式來進行使用,藉此提升開發效率。 現在就來介紹幾個在使用PyPI時,需要瞭解的基本功能。首先,PyPI的首頁如下圖: 各位可以在搜尋的地方查詢所需的套件,例如搜尋常應用在網路爬蟲的beautifulsoup4套件(Package),從查詢結果可以看到許多相關的套件(Package),如下圖: 以beautifulsoup4 4.8.2為例,點進此套件(Package)後,可以看到安裝的指令及最新版的發佈日期,如下圖: 一個套件(Package)要如何使用,一定會有文件可以參考,往下即可看到Documentation的連結,如下圖: 而套件(Package)的版本演進歷史則可以透過左邊的Release history來查看,如下圖: 以上是在使用PyPI上查找套件(Package)時,較常使用的部分,接下來,就來教大家如何透過指令來安裝套件(Package)吧。…
學程式助教
February 5, 2020
Python初學程式工程思維技術問題

Pandas 第7講:Python資料處理套件Pandas數值處理與基礎統計量

上一篇文章主要介紹如何利用pandas處理字串資料,而這章節的會著重於數值的資料處理以及顯示基礎統計量的方法。在資料分析中,數值資料是非常常見的,而且對於後續的深入分析而言,數值資料能夠讓我們進一步利用推論統計檢定許多因素與目標的關聯性,幫助我們能夠利用檢定結果進行決策,或是發現夠深入的趨勢。   這次我們會使MLB美國職棒大聯盟的各隊歷年統計數據(mlb_team.csv)的公開資料,其中記錄了美國職棒大聯盟從西元1871年至今的各球隊數據,因為最近正好碰到需要分析棒球的運動相關數據,且這份資料大部分的欄位都是數值欄位,正好適合這篇文章主題。 讀取資料: import pandas as pd mlb_teams = pd.read_csv("mlb_team.csv",encode="UTF-8") mlb_teams.head()     向量處理 Vectorize Operations 之前的文章中有提到Pandas是利用向量處理的方式進行資料處理的,所以我們在進行數值運算的時候都是針對單一個欄位將欄位中的所有數值進行相同的運算,如果要針對特定條件的數值進行運算,則需要先進行資料篩選再進行數值處理。 基本上在利用Pandas進行數值運算時,跟我們一般在寫Python計算一樣,只是平常用於運算的變數變成了 DataFrame 物件或是 Series 物件,所以所有Python中的數學運算符,在Pandas都可以直接使用: s = pd.Series() s+11 s-10 s*5…
學程式助教
February 3, 2020
Python

Python是什麼? TOP7 新手必讀知識!

Python在近幾年來的受到愈來愈多人的青睞﹐現在更是最熱門的程式語言之一。在這一篇文章我們會和大家一起探討以下四個問題:Python究竟是什麼? Python有什麼功能? 學習Python究竟可以從事那些行業? 介紹Python相關軟體 (more…)
學程式助教
January 28, 2020
Python

Python 入門&基本教學介紹!

到底要怎麼開始學Python ?對於許多人來說,最難的其實不是學習的過程,而是連起步都不知道該怎麼下手,幾天這篇文章會帶大家認識基礎的python,也讓你對python也更多基礎認識!   新課程上架Udemy !  全新Python 課程上架,8小時基礎實戰!,限時優惠搶購點我! 讓你輕鬆學習: 了解 Python 語法與什麼是資料科學 使用 Pandas 套件進行資料處理 瞭解程式背後的邏輯與為什麼學習 掌握視覺化套件庫 Matplotlib 掌握進階視覺化套件庫 Seaborn 練習使用【歷屆金鐘獎資料】取得重要訊息 用8小時,省下你獨自摸索花費的時間! 8小時,讓履歷不一樣!   Python 入門&基本教學介紹!…
學程式助教
January 28, 2020
學程式主題小聚專案思維

【學程式主題小聚-利用Python與Balck Scholes來制定選擇權評價模型】

相信大家都有聽過股票但是選擇權比較鮮少人會特別注意到亦或是想深刻的了解的 其實,台灣人對於金融市場是非常熱衷的,這次Raymod身為一名股權衍生性金融商品交易員來告訴我們 身為一名交易員他對於選擇權中有什麼該注意的,以及選擇權中交易的細節都在這場小聚都仔細地分享給我們! 對Python+金融有興趣的朋友可以來到Raymond的部落格走走喔 雷蒙的Python投資筆記版主(https://raymond-investment.com/)   衍生性金融商品介紹 由標的資產延伸(衍生)出來,並可以利用金錢衡量的商品 股票、期貨、利率、外匯、原物料等 高槓桿 → 高風險 什麼是選擇權 定義:有權利於某時間用某價格買進或賣出標的資產 用途:投機或避險 相關參數:買賣權,波動率、標的資產價格、履約價、到期時間、利率 Raymond也舉了1月的總統大選當例子, 總統大選前應該就要先避險 ,也是因爲新的執政黨剛上任會影響金融市場。 要會假想整體局勢,會比較像賭博概念! 再購入選擇權時,當然也要了解風險,要掌握的住會輸多少 有種「要戰勝敵人,就得先瞭解敵人」的感覺 股票的買入賣入是1:1,選擇權則是1:4,風險這麼高的請況下,這時,我們就是要學選擇權評價 可以幫助我們以下幾點 避免錯價買入或賣出…
學程式助教
January 22, 2020