python_coroutine_協程

【Python教學】淺談 Coroutine 協程使用方法

Posted Leave a commentPosted in 04 Python 基礎教學, 05 Python 爬蟲教學, 10 所有文章

本篇大綱: 什麼是 Coroutine (協程 / 微線程)? 使用 Python asyncio library 寫 Coroutine 一個簡單的範例 了解 async / await 語法糖 如何建立事件循環? 如何建立任務 Task? 如何同時運行多個 Tasks 任務? 一. 什麼是 Coroutine (協程 / 微線程)? 先來看看 Python官方對 Coroutine 的解釋: […]

mutli_processing_pool

【Python教學】淺談 Multi-processing pool 使用方法

Posted Leave a commentPosted in 04 Python 基礎教學, 05 Python 爬蟲教學, 10 所有文章

本篇大綱: 簡單的 multi-processing pool 範例 建議使用處理程序 (process) 數量 了解 pool 能調用的方法(method) 到底有用 _async 是差在哪裡? map 和 starmap 到底差在哪裡? Callback? 取得回傳資料 補充 chunksize & maxtasksperchild 是什麼? 一. 簡單的 Multi-proces […]

python_threading_processing

【Python教學】淺談 Multi-processing & Multi-threading 使用方法

Posted Leave a commentPosted in 05 Python 爬蟲教學, 10 所有文章

一. Multi-processing 和Multi-threading 的優缺點: Multi-processing (多處理程序/多進程): 資料在彼此間傳遞變得更加複雜及花時間,因為一個 process 在作業系統的管理下是無法去存取別的 process 的 memory 適合需要 CPU 密集,像是迴圈計算 Multi-threading (多執行緒/多線程): 資料彼此傳遞簡單,因為多執 […]

python_gil_thread-saf_atomic

【Python教學】淺談 GIL & Thread-safe & Atomic operation

Posted Leave a commentPosted in 04 Python 基礎教學, 05 Python 爬蟲教學, 10 所有文章

本篇整理了關於 Python 為什麼會有 GIL 的出現、thread-safe 問題探討、以及 GIL 切換時機、和確保 thread-safe 的原子操作概念 (atomic operation),此篇未來會持續更新,希望對在了解 GIL 的你有幫助~ 一. 為什麼會有 GIL 的出現? In CPython, the global interpreter lock, or GIL, is a […]

multithreadpool

【爬蟲教學】Python多線池MultiThreadPool的兩種方法

Posted Leave a commentPosted in 05 Python 爬蟲教學, 10 所有文章

先來看一下實施線程池後,可以將每一個頁面原本需要15s才能爬取完畢的頁面,降至3.9秒(10 thread pool)~2.28秒(25 thread pool),但是線程池要小心使用,不小心就會像上面圖片一樣,想像中大家是各自完成任務,但實際上是亂七八糟的執行任務 多線池(Multithread Pool)實現方法一 首先install threadpool,這是個最後更新時間在2015年的套件 […]

selenium_coverphoto

【爬蟲筆記】如何在GoogleComputeEngine上運行selenium爬蟲

Posted 4 CommentsPosted in 05 Python 爬蟲教學, 10 所有文章

最近在寫將自己的selenium爬蟲程式放在GoogleComputeEngine上運行,環境設置的過程中不小心踩了不少坑,所以決定記錄下這篇,希望提供給之後想在GCP上設定selenium爬蟲的朋友! 如果對GCP或是selenium不熟悉的朋友,建議可以先閱讀以下兩篇文章: 【爬蟲筆記】如何在GCP上架設運行Python爬蟲程式 【爬蟲筆記】Python Selenium爬蟲教學:實作商品庫存 […]

gcp_python_coverphoto

【爬蟲筆記】如何在GCP上架設運行Python爬蟲程式

Posted 2 CommentsPosted in 05 Python 爬蟲教學, 10 所有文章

本篇介紹如何在GoogleCloudPlatform上架設Python爬蟲程式:從GCP建立虛擬機、上傳Python檔案、在GCP執行Python爬蟲程式,和最後在GCP上設定自動排程每日執行。當初在研究GCP上花費不了少時間,所以寫了這篇文章供大家參考,而如果你是想在AWS雲端上架設Python爬蟲程式的話,可以參考這篇:在AWS雲端伺服器上利用 Python Selenium 擷取網站資料。 […]

競品關鍵字佈局

[數據分析] Python爬取競爭對手Google搜尋關鍵字佈局和文案

Posted 4 CommentsPosted in 01 電商數據分析, 05 Python 爬蟲教學, 10 所有文章

過去撰寫關鍵字規劃書時,時常要觀察競爭對手的佈局和文案,要不停的手key關鍵字來查詢還蠻麻煩的,所以寫了這個小程式利用Python爬取Google搜尋結果,一次輸入多個要觀察的關鍵字,就可以利用python自動爬取競爭對手Google關鍵字佈局和文案。 第一步:開啟google_search_bs4執行檔 下載後開啟dist資料夾的google_search_bs4執行檔,此次利用pyinstal […]