【Python 網路爬蟲筆記】BeautifulSoup Library - part 3
【Python 網路爬蟲筆記】BeautifulSoup Library - part 3感謝你點進本篇文章!!我是 LukeTseng,一個熱愛資訊的無名創作者,由於近期大學開設大數據分析程式設計這門課程,裡面談到了爬蟲概念,讓我激起一些興趣,因而製作本系列筆記。 聲明:本篇筆記僅供個人學習用途,斟酌參考。 另外本篇筆記使用 VSCode 環境進行編寫,部分模組(函式庫)需自行下載。 安裝 BeautifulSoup 模組若使用 google colab 或 anaconda 環境者無須安裝。 指令: 1pip install beautifulsoup4 引入 BeautifulSoup 模組1from bs4 import BeautifulSoup 為什麼我們要用 BeautifulSoup?BeautifulSoup 的主要用途是解析 HTML 和 XML,將網頁內容轉換成結構化的樹狀格式供程式操作 。 網頁資料解析與擷取是 BeautifulSoup 最主要的用途。 在網路爬蟲的世界,無可或缺的除了 request 模組外,就是 BeautifulSoup,有了這個模...
如何解決 VMWare AMD V / RVI 不支援該平台問題
如何解決 VMWare AMD V / RVI 不支援該平台問題大家好,我是 LukeTseng,近期將桌機轉到筆電時,在筆電安裝 VMWare,啟動虛擬機時遇到了一些問題,因此撰寫本篇文章來解決這個問題。 那麼這個問題就是,開啟虛擬機後,會跳出: Virtualized AMD-V/RVI is not supported on this platform.Continue without virtualized AMD-V/RVI? 這問題是因為 Windows 11 預設啟用 Virtualization-based Security(VBS),這個功能使用 Hyper-V 作為底層技術,會佔用硬體虛擬化資源,導致 VMware Workstation 無法使用 AMD-V/RVI 進行虛擬化。 然後接下來就讓我來一步一步告訴各位怎麼做吧。 第一步:關閉【記憶體完整性】首先對 Windows Defender 的 tray icon 按下滑鼠左鍵一下。 進入介面後,在左側邊欄選擇【裝置安全性】。 再來於【核心隔離】的下方點擊【核心隔離詳細資料】。 然後確保【記憶體...
【Python 網路爬蟲筆記】Requests Library - part 2
【Python 網路爬蟲筆記】Requests Library - part 2感謝你點進本篇文章!!我是 LukeTseng,一個熱愛資訊的無名創作者,由於近期大學開設大數據分析程式設計這門課程,裡面談到了爬蟲概念,讓我激起一些興趣,因而製作本系列筆記。 聲明:本篇筆記僅供個人學習用途,斟酌參考。 另外本篇筆記使用 VSCode 環境進行編寫,部分模組(函式庫)需自行下載。 安裝 Requests 函式庫Colab 及 Anaconda 環境無須安裝,內建即有。 若不確定自己有裝的話,可以輸入 pip list 查看已安裝的所有模組。 使用指令 pip install requests。 像我已經安裝過了,再安裝一次他會跟你說 Requirement already satisfied,表示你裝過了。 另外一個測試有沒有安裝過該模組的方法,可以打開 VSCode 或其他環境,輸入以下指令並執行即可: 12import requestsprint(requests.__version__) 執行後會在最下面出現版本資訊。 Requests 基礎用法使用前須引入模組 impo...
【Python 資安筆記】編碼(Encoding)
【Python 資安筆記】編碼(Encoding)Cover : https://www.publicdomainpictures.net/en/view-image.php?image=563833&picture=hacking 感謝你點進本篇筆記!該系列筆記主要紀錄學習資安的過程,以及我個人的一些簡單白話解釋,另外也涉及到在學校中上課所學的資安技巧及知識。 若本篇文章有誤,麻煩各位告訴我,這樣才能好讓我進步!謝謝~ 自網站 CryptoHack 進行學習:https://cryptohack.org/ ASCII 字元編碼Python 之間的轉換可以用 chr() 以及 ord() 兩個函式做到。 以下是對於 chr() 以及 ord() 兩函式的解釋: chr() 接受十進位或十六進位的數字,回傳值為傳入參數所對應的 ASCII 字元,如傳入參數 97,就回傳輸出 'a' 這個字元。 ord() 與 chr() 相反,它接受一個字元當作參數傳入,回傳對應的 ASCII 數值,或是 Unicode 數值。 以下程式碼就做了兩個函數之間的轉換關係:...
儲存整數的方法,在電腦裡負數是如何表示的
儲存整數的方法,在電腦裡負數是如何表示的歡迎你點入本篇文章,會促成我想做這篇的原因,主要是因為在上計概時,突然浮現很多靈感,跟一大堆的問題(教授,為什麼要講的這麼淺白呢?我想知道更多啊啊!),為了一次解決我所有的困惑,於是製作本篇文章。 另外本篇偏向於做題篇,原理部分可能點到為止。 若文章有任何疑點及錯誤的地方歡迎提出。 上一篇文章:淺談二進位與十六進位,為什麼電腦要使用?你所不知道的二進位。 Sign–magnitude representation(原碼表示法)這種方法可以顯示 $2^n - 1$ 個無號整數(unsigned integer)。 無號整數(unsigned integer)所謂無號整數亦即 >= 0 的整數,這種整數儲存方式很簡單,只要把十進位轉換成二進位即可。 如:將 7 轉成 8 bit(位元)的整數。 7 的二進位是 $(111)_2$ ,要轉成 8 bit 就在前面補 0,變成: $(00000111)_2$ 即可。 在 8 bit 的系統裡面,如果 $(11111111)_2 + (00000001)_2$ ,這兩個相加之後,會變成 $(00...
【Python 網路爬蟲筆記】Introduction - part 1
【Python 網路爬蟲筆記】Introduction - part 1感謝你點進本篇文章!!我是 LukeTseng,一個熱愛資訊的無名創作者,由於近期大學開設大數據分析程式設計這門課程,裡面談到了爬蟲概念,讓我激起一些興趣,因而製作本系列筆記。 聲明:本篇筆記僅供個人學習用途,斟酌參考。 何謂網路爬蟲(Web Crawler)? Image Source:https://www.freepik.com/free-vector/cute-spider-sticker-white-background_20770625.htm#fromView=keyword&page=1&position=48&uuid=58458110-a248-4037-895d-b6b66f71a92b&query=Spider+cartoon 網路爬蟲(Web Crawler),也叫網路蜘蛛,是一種用來自動瀏覽全球資訊網的網路機器人。其目的一般為編纂網路索引。From WikiPedia 網路爬蟲最主要的用處是可以「自動化」幫我們擷取及收集想要的資訊。 一般的 We...
【Leetcode C++ 解題筆記】Divide & Conquer - part 2
【Leetcode C++ 解題筆記】Divide & Conquer - part 2本筆記僅供個人學習用途,內容斟酌參考。 1. Convert Sorted Array to Binary Search TreeProblem Source:https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/description/?envType=problem-list-v2&envId=divide-and-conquer 難度:Easy 題意大致上就是要你把一般常見的陣列轉換成 BST。 補充一下 BST 特性: 左子樹的 Nodes 都比 Root 還小;反之,右子樹都比 Root 還大。 子樹必須都是 BST。 解題思路: 用到 Divide & Conquer 的概念,每次把「目前」陣列片段選中間元素作為 root。 對 root 左側遞迴呼叫產生左子樹,右側也一樣,直到子陣列長度為 0 就結束。 範例程式碼: 1234567891011121314151...
2025 VMWare Workstation Pro 免費安裝教學
2025 VMWare Workstation Pro 免費安裝教學大家好,我是 LukeTseng,現在的 VMWare Workstation Pro 已經轉免費了,但是安裝流程有些繁瑣,在此我來幫助各位解決這個問題! 本篇教學主要以新手向為主,透過一步、一做的流程進行教學。 若本篇教學文章有誤,懇請勘誤,感謝您。 先開啟 VT 虛擬化技術功能!我們要玩虛擬機之前,無論是你曾玩過什麼 BlueStacks、夜神模擬器,那些都需要開啟所謂的 VT 虛擬化技術,才能順跑。 不開也是可以,只是會讓你用到懷疑人生。 我如何確認已經開啟 VT?很簡單,先到我們的工作列空白處按下滑鼠右鍵,開啟工作管理員。 開啟之後在視窗左側欄位點選【效能】選項。 點擊我們的 CPU 欄位,可看到模擬是否已啟用,啟用的話就是有開 VT。 在開啟這個之前呢,我們需要進入電腦的 BIOS 系統,以下是個人電腦(PC)與筆電端的操作方式: HP:https://www.hp.com/hk-zh/shop/tech-takes/post/%E5%A6%82%E4%BD%95%E5%9C%A8-windows...
【Uva 題庫解題】C++ 個人解題筆記 - part3
【Uva 題庫解題】C++ 個人解題筆記 - part3本次題庫擷取自 CPE 2025/05/20 歷屆考題:https://cpe.mcu.edu.tw/cpe/test_data/2025-05-20 1. B2-sequenceUva Judge:https://onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=2004 Zerojudge:https://zerojudge.tw/ShowProblem?problemid=d123 該題屬於一顆星選集的範圍,具體就不再說明了,直接給 Code: 上傳 Uva 的時候須注意條件: B2-sequence 必須嚴格遞增 且 $b_i >= 1$ 1234567891011121314151617181920212223242526272829303132333435363738394041#include <bits/stdc++.h&...
淺談二進位與十六進位,為什麼電腦要使用?你所不知道的二進位。
淺談二進位與十六進位,為什麼電腦要使用?你所不知道的二進位。歡迎你點入本篇文章,會促成我想做這篇的原因,主要是因為在上計概時,突然浮現很多靈感,跟一大堆的問題(教授,為什麼要講的這麼淺白呢?我想知道更多啊啊!),為了一次解決我所有的困惑,於是製作本篇文章。 若文章有任何疑點及錯誤的地方歡迎提出。 為何電腦用二進位?直接說結論,最重要的原因當然就是二進位(0、1)最穩定且可靠的對應電子裝置的開/關狀態。 會使用二進位,也跟電子元件的物理特性息息相關: 電晶體(Transistor)或邏輯閘(Gate)只有兩種穩定狀態:導通(1:ON)跟截止(0:OFF)。 因為這樣的關係,所以可減少誤判跟雜訊影響。 再來就是二進位的抗雜訊的能力強,請看圖: Image Source:類比數位訊號控制 - 鈺傑自動控制 類比訊號中 0 ~ 5V 的任意值容易被雜訊所干擾,有很大機會會預判錯誤。比如說我們有個溫度感測器,輸出 0 ~ 5V 模擬電壓,對應 0°C ~ 100°C。 正常情況下,當感測器輸出 2.50 V,就代表當前溫度為 50°C。如果連線或環境有電磁干擾(如假設旁邊大功率馬達啟...
【C++ 筆記】編譯流程(Compilation Process)
【C++ 筆記】編譯流程(Compilation Process)很感謝你點進來這篇文章。 你好,我並不是什麼 C++、程式語言的專家,所以本文若有些錯誤麻煩請各位鞭大力一點,我極需各位的指正及指導!!本系列文章的性質主要以詼諧的口吻,一派輕鬆的態度自學程式語言,如果你喜歡,麻煩留言說聲文章讚讚吧! 編譯流程(Compilation Process)共分四階段: Preprocessing(前置處理) Compilation(編譯) Assembly(組譯) Linking(連結) Image Source:C++ Preprocessor And Preprocessor Directives - GeeksforGeeks 所謂的 Source File 也就是 Source Code,就是 .cpp / .c 檔案。 1. Preprocessing範例指令:g++ -E main.cpp -o main.i Preprocessing 前置處理是 C / C++ 編譯的第一步,主要對 # 開頭的指令(稱為 marco 巨集)進行處理。 簡單來說就是把 #includ...
【C++ 筆記】前置處理器(preprocessor) - part 33
【C++ 筆記】前置處理器(preprocessor) - part 33很感謝你點進來這篇文章。 你好,我並不是什麼 C++、程式語言的專家,所以本文若有些錯誤麻煩請各位鞭大力一點,我極需各位的指正及指導!!本系列文章的性質主要以詼諧的口吻,一派輕鬆的態度自學程式語言,如果你喜歡,麻煩留言說聲文章讚讚吧! Introductionpreprocessor 是在 C / C++ 編譯前對 Source Code(.cpp files)進行處理的一種工具。 It does many tasks such as including header files, conditional compilation, text substitution, removing comments, etc.From GeeksForGeeks preprocessor 可以做到如下這些事情: 引入標頭檔 條件編譯 文本替換 移除註解 等等 另外也可以讓開發者去選擇說,哪些程式需要被保留(included)或是不需要被保留(excluded)的。 經 preprocessor 處理過後的程式碼...
2025 CPE 學習資源整理
2025 CPE 學習資源整理CPE, Collegiate Programming Examination, 大學程式能力檢定。 註:眾所皆知,DSA 是 Data Structures & Algorithms 的縮寫。 CPE 練習題庫: Yui Huang CPE Official C++ 學習資源(唯一推薦臺大資管孔令傑老師): NTU Programming Design OCW, Professor, Ling-Chieh Kung, MI C++ Programming Language - GeeksForGeeks C++ 教程 | 菜鸟教程 資料結構(Data Structures): 【杰哥數位教室】資料結構 | Youtube DSA Tutorial - GeeksForGeeks 演算法(Algorithms): NYCU Algorithms OCW, Professor, Iris Hui-Ru Jiang, EE DSA Tutorial - GeeksForGeeks 競程相關: 從零到一:那些演算法競賽會用到的基礎...
【C++】競程筆記(分治法 D&C)
【C++】競程筆記(分治法 D&C)程式碼範例參考:NTUCPC Guide,此筆記僅為個人學習用途。 Introducing Divide and ConquerDivide and Conquer 英翻中為分治法,這是一個把大問題切分成多個子問題,最後從這些子問題合併來求得主問題解答的一種方法。 而 Divide and Conquer 的步驟主要有三項: Divide:把原問題拆成多個小且類似的子問題,直到無法再細分。 Conquer:用遞迴解決這些子問題;若遇到規模足夠小的「基本情況(base case)」,則直接輸出答案。 Merge:合併子問題得到最終解,一旦較小的子問題被解決,則遞迴合併所有子問題得到更大問題的答案。 例題:王老先生Problem Source:https://tioj.sprout.tw/problems/114 題目敘述: 有個正方形土地 $N \times N$ , $N$ 為 $2$ 的正整數次方。 有一格子 $(X, Y)$ 已被王老先生選走了,你要放 $\frac{N \times N - 1}{3}$ 個 3 格的 L 型方...
【CSS 筆記】從零開始的 CSS - part 1
【CSS 筆記】從零開始的 CSS - part 1Hello Guys,我是 LukeTseng,自從大學放榜後,我就積極不間斷的學習資訊相關的東西,持續地茁壯自己,主要最大的成分還是興趣與熱愛這個學科來支撐的~總之,廢話不多說,本文主要透過網路上的各大免費平台自學,並且整理成一篇筆記以供自己閱讀的同時,也能促進個人的學習軌跡。 簡介(Introduction)CSS 全名為 Cascading Style Sheets(串樣式列表、級聯樣式表、串接樣式表、階層式樣式表),為一種用於將結構化語言(HTML、XML 等)添加樣式的電腦語言。簡單來說就是幫 HTML、XML 等這些語言渲染、美化。 以下圖片的左側是有用 CSS 的網頁,右邊沒有用,顯眼可見的差異。 Image Source:That Time I Tried Browsing the Web Without CSS | CSS-Tricks CSS was released (in 1996), 3 years after HTML (in 1993). The main idea behind its use...








