Gemmart Design
  • 首頁
  • About me
  • ProjectsHot
  • BlogHot
    • 關於學習
    • 關於生活
    • 關於工作
  • Contact me
Author

Gemma

WordPress

WordPress #1 – 網站建置資源

by Gemma 2024 年 11 月 30 日
written by Gemma

超級推薦網路帶路姬五天自學衝刺班課程

超級推薦網路帶路姬五天自學衝刺班課程,不會程式碼也可以輕鬆做個人作品集,大家可以自行到網站看教學影片。簡單說一下心得,教學簡單、步驟清楚,帶路姬教學真的是跟標題一樣手把手沒在唬爛,帶你一步一步完成,從辦帳號到每個修改網站細節、比較主機方案、購買佈景主題的優缺點都詳細列出。

五天課程我大約花費1個禮拜看完並完成初步網站建置,加上整理作品集與構思網站配置,整個網站建置完成大約3~4周。影片速度我都會調整到1.5~2倍速度比較剛好,真心推薦!

列出目前花費與使用心得上的心得

項目詳細內容使用時間價格
購買主機A2 Hosting Accel 方案3年NTD $ 4,967
佈景主題Soledad 永久 NTD $ 1,997
總金額
(不包含國外刷卡手續費)
NTD $ 6,064

教學影片內都有詳細列出每個主機的優缺點,考慮到穩定性原本選擇Cloudways主機,優點速度快,缺點是所有主機內最貴。結果辦完帳號卡了一天都不讓我認證手機號碼,與客服來回寄信後覺得好麻煩。因為有時間壓力設定一個禮拜結束課程,所以最後折衷選擇A2 Hosting。目前為止速度上覺得還可以,儲存發布等待的時間,對我這個急性子有點點點慢,但不確定其他主機使用起來的感覺,目前無法比較,但更新速度還算可以接受。

佈景主題個人覺得對懶人來說CP很高,完全不需要程式碼的基礎,功能就已經很完整。教學影片內也有詳細說明買佈景主題的優點,很很多頁面範本可以參考設計或版面配置,Elementor和Soledad內建的版面非常多,設計感對普通人來說需求就已經很夠。我目前網站上的所有內容都是單純只使用內建的範本和區塊做出來的。

結語

目前為止覺得錢花得很值得,作為個人作品集展示功能已經非常齊全,加上原本就沒有追求要花俏的網站元素,使用起來非常簡單。教學是免費的真的非常佛心,如果未來有更多需求,也可以加購內建的其他PRO版面,進可攻退可守。原本有考慮在類似medium等網站建立部落格分享文章,只是上網查評價後發現WordPress自由度最高,拖延好久做了一下功課,一個月就完成網站的建置實在。太感動了,總算是完成一項代辦清單!

2024 年 11 月 30 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python練習#18-Pandas基本功能

by Gemma 2024 年 11 月 27 日
written by Gemma

本周目標

學習Pandas資料分析

任務

  • 認識單維度的資料 Series
  • 認識雙維度的資料 DataFrame。 (類似表格、table)

專案練習

使用Series找出最大值、中位數與放大2倍

import pandas as pd
data=pd.Series([20,25,10,15,20,15,12])
print(data)
print("Max:",data.max())
print("Median:",data.median())
print("--------------------")
data=data*2
print(data)
print("Max:",data.max())
print("Median:",data.median())

Output

0    20
1    25
2    15
3    20
4    12
dtype: int64
Max: 25
Median: 20.0
--------------------
0    40
1    50
2    30
3    40
4    24
dtype: int64
Max: 50
Median: 40.0

比較運算


import pandas as pd
data=pd.Series([20,25,15,20,12])
data=data==20
print(data)

Output

0     True 
1    False 
2    False 
3     True 
4    False 
dtype: bool

Dataframe基本操作,取得特定欄位

import pandas as pd
data=pd.DataFrame({
    "Name":["Amy","Leo","Joy","Candy"],
    "Age":[20,25,28,"NA"]
})
print(data)
# print(data["Name"])
print("--------------------")
print(data.iloc[0])
print(data.iloc[0,1])

Output

    Name Age
0    Amy  20
1    Leo  25
2    Joy  28
3  Candy  NA
--------------------  
Name    Amy
Age      20
Name: 0, dtype: object
20
2024 年 11 月 27 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python問題紀錄#17-網站上傳到Heroku無法正常運作

by Gemma 2024 年 11 月 26 日
written by Gemma

本周目標

 Flask 網站開發

任務

  • 基礎環境建置
  • Heroku 雲端主機教學

專案練習

輸入git commit -am “make it better”顯示以下資訊

Author identity unknown

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

繼續輸入git push heroku main顯示錯誤

error: src refspec main does not match any
error: failed to push some refs to 'https://git.heroku.com/gemma-python.git'

ChatGPT顯示下列原因

  • main分支不存在 網路教學式master
  • 沒有提交代碼到本地任何分之
  • 未設定遠端儲存庫或分之
  • Heroku儲存初始化問題

我的解決方法

先講結論: Heroku網站已取消免費,可以轉移至Pythonanywhere

沒找到如何使用VS Code運行Pythonanywhere

但免費版無法自己創資料夾和檔案,只能測試上傳Code後網站可以正常運作

步驟1: 先確認設定檔無問題

檢查Procfile輸入錯字,更正後重新輸入git commit -am “make it better”依然有問題

步驟2: 確認分支名稱

輸入git branch,沒有顯示任何東西,代表沒有設定到分支名稱

步驟3: 設定分支名稱

輸入git branch -M main

步驟4: 確認 HEAD 是否指向某個分支

輸入cat .git/HEAD 確定到main

ref: refs/heads/main

但重複設定步驟依然顯示*** Please tell me who you are.

步驟5: 設定名字

git config --global user.name "Gemma"
>> git config --global user.email "yabahong@gmail.com"

輸入git config –global –list 確認已登錄名字跟信箱

user.name=Gemma
user.email=yabahong@gmail.com

再次嘗試git commit -m “Your commit message”

沒有顯示*** Please tell me who you are.

步驟6: 測試git push heroku main

這之前可以先檢查自己的分支名稱git branch顯示名稱,我的顯示mian

但彭彭老師繳學影片為master,所以也可能是分支名稱的問題

[main (root-commit) 0267e69] Your commit message
 4 files changed, 57 insertions(+)
 create mode 100644 Procfile
 create mode 100644 app.py
 create mode 100644 requirements.txt
 create mode 100644 tontime.txt
#(以下省略)

結果: 出現Application Error

程式可以跑,但跑出來網址有問題

轉移到Pythonanywhere已可以成功展示網站

2024 年 11 月 26 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python問題紀錄#16-下載Git後VS Code顯示無法辨識

by Gemma 2024 年 11 月 25 日
written by Gemma

本周目標

 Flask 網站開發

任務

  • 基礎環境建置
  • Heroku 雲端主機教學

專案練習

VScode輸入git顯示錯誤

git : 無法辨識 'git' 詞彙是否為 Cmdlet、函數、指令檔或可執行程式的名稱。請檢查名稱拼字是否正確,如果包含路徑的話,請確認路徑是否正確,然後再試一次。
位於 線路:1 字元:1
+ git
+ ~~~
    + CategoryInfo          : ObjectNotFound: (git:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

解決方法1: 重新啟動VS Code

環境變數可能還未載入,還是不行

解決方法2: 參考網站步驟,新增環境變數路徑後重新啟動

輸入Git正常運作!

2024 年 11 月 25 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python問題紀錄#15-抓取AJAX網站資料 medium網站標題範例

by Gemma 2024 年 11 月 21 日
written by Gemma

本周目標

學習WebCrawler基本用法與應用

任務

  • 如何訪問網站加入瀏覽器資訊並取得網站資料
  • 使用Beautifulsoup抓取網站標題
  • 加入cookie語法
  • 使用迴圈抓取多頁資料
  • 練習AJAX網頁-KKDAY
  • 練習AJAX網頁-Medium

專案練習

目標

抓取Medium首頁標題

發送請求取得網站文字資料

注意1: 確認Medium網站有Payload,且Headers有Content-Type參數,需加入請求代碼

注意2:# 更改limit後面數字可以跑出最多20篇

import urllib.request as req
import json
url="https://medium.com/_/graphql"
requestData={"operationName"此處複製完整Payload代碼"}
request=req.Request(url,headers={
    "content-type":"application/json; charset=utf-8",
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
    },data=json.dumps(requestData).encode("utf-8"))
with req.urlopen(request) as response:
    result=response.read().decode("utf-8")

print(result)

可成功印出資料,最後一行可以註解掉

解析json資料,抓取文章標題,確定可以印出第一篇文章

注意: 0不需要加上引號”0″

result=json.loads(result)
print(result["data"]["webRecommendedFeed"]["items"][0]["post"]["title"]) 

Output

The Web We Have to Save

使用迴圈抓取20篇文文章標題

result=json.loads(result)
items=result["data"]["webRecommendedFeed"]["items"]
for item in items:
    print(item["post"]["title"])

Output

How Reading Can Literally Change Your Brain Chemistry
31 Photos From September 11th That You Have Never Seen
Most People Don’t Know the Difference Between “Feelings” and “Emotions”
The Crossroads of Should and Must
System Design Blueprint: The Ultimate Guide
Late Loves Are Better Loves
How ‘Should’ Makes Us Stupid — And How to Get Smart Again
Your portfolios are fucking boring
How To Write With AI Without Sounding Like AI — ChatGPT Canvas
9 Strategies I Used To Get 237,000 Website Visits From Google Discover
The Insanity of Relying on Vector Embeddings: Why RAG Fails
GenAI with Python: Build Agents from Scratch (Complete Tutorial)
You’re Using ChatGPT Wrong! Here’s How to Be Ahead of 99% of ChatGPT Users
Smoking Too Much Weed Almost Ruined My Life
Why can’t we read anymore?
Forget LangChain, CrewAI and AutoGen — Try This Framework and Never Look Back
How to Think About Your Career
The UX job market REALLY sucks right now
I’m Now Terrified of AI, And You Should Be Too
It’s Not Our Place To Change Them.
2024 年 11 月 21 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python問題紀錄#14-抓取KKDAY網站資料遇到SSI憑證問題

by Gemma 2024 年 11 月 20 日
written by Gemma

本周目標

學習WebCrawler基本用法與應用

任務

  • 如何訪問網站加入瀏覽器資訊並取得網站資料
  • 使用Beautifulsoup抓取網站標題
  • 加入cookie語法
  • 使用迴圈抓取多頁資料
  • 練習AJAX網頁-KKDAY
  • 練習AJAX網頁-Medium

專案練習

目標

抓取KKDAY首頁標題

發送請求取得網站文字資料

import urllib.request as req
url="https://www.kkday.com/zh-tw/home/ajax_get_homepage_setting?csrf_token_name=0e2694a80a182eaccdfe363b65da5ecb"
request=req.Request(url, headers={
    "cookie":"_ga_RJJY5WQFKP=GS1.1.1732118298.1.1.1732118539.60.0.0",
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
})
with req.urlopen(request) as response:
    info=response.read().decode("utf-8")
print(info)

出現錯誤

urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Missing Subject Key Identifier (_ssl.c:1020)>

出現SSL驗證問題,網路搜尋參考這篇,修改程式碼為

import ssl
import urllib.request as req
ssl._create_default_https_context = ssl._create_unverified_context
url="https://www.kkday.com/zh-tw/home/ajax_get_homepage_setting?csrf_token_name=0e2694a80a182eaccdfe363b65da5ecb"
request=req.Request(url, headers={
    "cookie":"_ga_RJJY5WQFKP=GS1.1.1732118298.1.1.1732118539.60.0.0",
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
})
with req.urlopen(request) as response:
    info=response.read().decode("utf-8")
print(info)

可成功印出資料,最後一行可以註解掉

解析json資料,抓取文章標題

import json
info=json.loads(info)
posts=info["data"]["top_products"]["prod_list"]
for post in posts:
    print(post["name"])

Output

SHIBUYA SKY 展望台電子門票|即買即用
東京迪士尼度假區門票 Tokyo Disney Resort
台北展覽|草間彌生的「軌跡」與「奇跡」——W Collection & More 1951-2005
【新加坡出發】 迪士尼郵輪 | 迪士尼探險號(Disney Adventure)|3、4 晚行程
東京地鐵一日券/二日券/三日券|Tokyo Subway Ticket
韓國釜山通行證 VISIT BUSAN PASS
大阪周遊卡一日券・二日券 OSAKA AMAZING PASS 電子票
東京交通套票|京成電鐵 Skyliner 車票+東京地鐵 24 / 48 / 72 小時乘車券
日本環球影城門票 Universal Studios Japan|日本大阪 (官方授權)
韓國釜山|海雲台藍線公園海岸列車・天空膠囊列車票

2024 年 11 月 20 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python問題紀錄#13-使用Beautifuls]Soup模組和迴圈抓取多頁資料

by Gemma 2024 年 11 月 19 日
written by Gemma

本周目標

學習WebCrawler基本用法與應用

任務

  • 如何訪問網站加入瀏覽器資訊並取得網站資料
  • 使用Beautifulsoup抓取網站標題
  • 加入cookie語法
  • 使用迴圈抓取多頁資料

專案練習

目標: 抓取PT八卦版1-5頁面標題

建立函式,發送請求並取得資料

import urllib.request as req
def getData(url):
    request=req.Request(url,headers={
        "cookie":"over18=1",
        "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"})
    with req.urlopen(request) as response:
        data=response.read().decode("utf-8")

使用Beautifulsoip模組解析網站資料

    from bs4 import BeautifulSoup
    root=BeautifulSoup(data,"html.parser")

抓取文章標題

    titles=root.find_all("div",class_="title")
    for title in titles:
        if title.a:
            print(title.a.string)

注意: 錯誤程式碼,抓不到資料

for title in titles:
    if title.a:
        print(titles.a.string)

錯誤訊息

AttributeError: ResultSet object has no attribute 'a'. You're probably treating a list of elements like a single element. Did you call find_all() when you meant to call find()?

語法要前後呼應,titles應該為title,因為最後印出資料是每個title,不是指找全部的titles

修正後語法

for title in titles:
    if title.a:
        print(title.a.string)

找到上頁連結,讓程式自動抓取

    nextLink=root.find("a",string="‹ 上頁")
    return nextLink["href"]

主程式: 使用迴圈爬取多頁資料

pageURL="https://www.ptt.cc/bbs/Gossiping/index.html"
count=0
while count<5:
    pageURL="https://www.ptt.cc"+getData(pageURL)
    count+=1

完整程式

import urllib.request as req
def getData(url):
    request=req.Request(url,headers={
        "cookie":"over18=1",
        "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"})
    with req.urlopen(request) as response:
        data=response.read().decode("utf-8")

    from bs4 import BeautifulSoup
    root=BeautifulSoup(data,"html.parser")
    titles=root.find_all("div",class_="title")
    for title in titles:
        if title.a:
            print(title.a.string)

    nextLink=root.find("a",string="‹ 上頁")
    return nextLink["href"]

pageURL="https://www.ptt.cc/bbs/Gossiping/index.html"
count=0
while count<5:
    pageURL="https://www.ptt.cc"+getData(pageURL)
    count+=1

Output

因資料太多,以下示範幾行

[ 好雷] 神鬼戰士2 緊扣羅馬建城神話的故事     
[好雷] 東京攻略[港片](2000)
[問片] 中年男找街邊女郎純聊天的電影
[情報] 劇場版「進擊的巨人」完結篇1/3上映     
[問片] 一部偵探假裝上吊但假死的影片
[  雷] 櫻桃號
[好雷]《紅色一號》以滿滿心意,打磨出聖誕魔力
[新聞] 「土生花開」記錄下金枝演社 重現吳朋奉珍貴身影
[公告] 電影板板規 2022/12/5
[公告] 禁政治版規 及 投票結果

2024 年 11 月 19 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python練習#12-使用Beautifuls]Soup模組解析網站抓取資料

by Gemma 2024 年 11 月 17 日
written by Gemma

本周目標

學習WebCrawler基本用法與應用

任務

  • 如何訪問網站加入瀏覽器資訊並取得網站資料
  • 使用Beautifulsoup抓取網站標題

專案練習

目標: 抓取PTT電影版第一頁標題

網頁原始碼範例:

<div class="title">
			
				<a href="/bbs/movie/M.1731766038.A.B52.html">[請益] 魔法壞女巫4DX?</a>
			
			</div>

文章被刪除範例

<div class="title">
			
				(本文已被刪除) [NTUIBrother]
			
			</div>

觀察原始碼:

發現每篇文章標題都被一個<a>標籤包裹,再被一個<div>的標籤包裹

若文章被刪除開頭沒有<a>標籤>

程式碼撰寫:

  1. 引入BeautifulSoup模組解析HTML,html.parser為BeautifulSoip提供的解析器之一
  2. 從HTML找到所有<div>的標籤,class的屬性為”title”的元素,class後面加上_是因為Python已經內建class這個保留字,所以BeautifulSoup使用class_作為替代,避免衝突
  3. for迴圈找到所有<div class=”title”>的標籤,並檢查是否存在<a>標籤,避免出現None情況(文章被刪除)
  4. 輸出所有含<a>標籤的標題
import urllib.request as req
url="https://www.ptt.cc/bbs/movie/index.html"
request=req.Request(url, headers={
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
})
with req.urlopen(request) as response:
    data=response.read().decode("utf-8")
import bs4
root=bs4.BeautifulSoup(data,"html.parser")
titles=root.find_all("div",class_="title")
for title in titles:
    if title.a:
        print(title.a.string)

Output

[新聞] 金馬61影帝組分析《餘燼》張震:與《緝魂
[情報] 破地獄票房衝破6000萬港幣
[討論] (雷)鍾孟宏坦言《餘燼》目標從不在和解,而是
[討論] 惡魔教室的老師(有劇透)
[新聞] 《媽媽咪呀!3》籌劃中 布洛斯南樂見其成
[問片] 西洋恐怖片?
[問片] 請問這部韓國電影 or 影集的名稱
[請益] 有角頭-大橋頭,每一個幫派的合照嗎??
[新聞] 榮譽奧斯卡致敬昆西瓊斯!紅毯眾星雲集
[公告] 電影板板規 2022/12/5
[公告] 禁政治版規 及 投票結果

2024 年 11 月 17 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python問題紀錄 #11-Web Crawler訪問網站

by Gemma 2024 年 11 月 16 日
written by Gemma

本周目標

學習WebCrawler基本用法與應用

任務

  • 如何訪問網站加入瀏覽器資訊並取得網站資料
  • 使用Beautifulsoup抓取網站標題

專案練習

遇到問題

已經加入瀏覽器資料避免被機器人阻擋,但資料依然跑不出來

import urllib.request as req
url="https://www.ptt.cc/bbs/movie/index.html"
request=req.Request(url, headers={
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
})
with req.urlopen(url) as response:
    data=response.read().decode("utf-8")
print(data)

Log

錯誤訊息: 一樣跳出Forbidden

urllib.error.HTTPError: HTTP Error 403: Forbidden

檢查原始碼發現:

with req.urlopen(url) as response:

url沒有改成request,修正後可抓到

修正後原始碼

import urllib.request as req
url="https://www.ptt.cc/bbs/movie/index.html"
request=req.Request(url, headers={
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
})
with req.urlopen(request) as response:
    data=response.read().decode("utf-8")
print(data)

Output

程式碼太多不複製貼上

2024 年 11 月 16 日 0 comments
0 FacebookTwitterPinterestEmail
Python

Python練習 #10-建立實體方法

by Gemma 2024 年 11 月 16 日
written by Gemma

本周目標

熟悉Python的基礎語法與資料結構

任務

  • 學習函數的定義和使用(Parameters、Return Values)
  • 練習設計和使用函數,並完成更多字串處理練習(例如文字查找和替換)
  • 學習file open, write, read指令
  • 學習json指令
  • 練習從公開網站讀取資料並寫入文件
  • 建立實體物件與實體屬性
  • 建立實體方法與應用

專案練習

先建立兩個文字檔案.txt,使用實體方法抓取文字資料

data1.txtx

4點半起床了

data2.txt

大家早上好

定義file類別

使用__init__方法8存入實體屬性名稱name

初始值為None

class file:
    def __init__(self,name):
        self.name=name
        self.file=None

定義實體方法open開啟檔案self.name

class file:
    def __init__(self,name):
        self.name=name
        self.file=None
    def open(self):
        self.file=open(self.name, mode="r" ,encoding="utf-8")

定義實體方法read讀取檔案self.name文字並回傳值

class file:
    def __init__(self,name):
        self.name=name
        self.file=None
    def open(self):
        self.file=open(self.name, mode="r" ,encoding="utf-8")
    def read(self):
        return self.file.read()

應用在data1和data2文字檔

class file:
    def __init__(self,name):
        self.name=name
        self.file=None
    def open(self):
        self.file=open(self.name, mode="r" ,encoding="utf-8")
    def read(self):
        return self.file.read()
    
f1=file("1116data1.txt")
f1.open()
result=f1.read()
print(result)

f2=file("1116data2.txt")
f2.open()
result=f2.read()
print(result)

Output

4點半起床了
大家早上好

Review

沒有檢查檔案是否存在

沒有關閉檔案,建議加上close方法

重複開始檔案

以下chatgpt示範

class File:
    def __init__(self, name):
        self.name = name
        self.file = None

    def open(self):
        try:
            self.file = open(self.name, mode="r", encoding="utf-8")
        except FileNotFoundError:
            print(f"檔案 {self.name} 不存在")

    def read(self):
        if self.file:
            return self.file.read()
        else:
            print("檔案尚未開啟")
            return ""

    def close(self):
        if self.file:
            self.file.close()
            print(f"檔案 {self.name} 已關閉")

# 使用範例
f1 = File("1116data1.txt")
f1.open()
result = f1.read()
print(result)
f1.close()

f2 = File("1116data2.txt")
f2.open()
result = f2.read()
print(result)
f2.close()
2024 年 11 月 16 日 0 comments
0 FacebookTwitterPinterestEmail
Newer Posts
Older Posts

分類

  • 關於學習
    • Python
    • WordPress

近期文章

  • WordPress #1 – 網站建置資源

  • Python練習#18-Pandas基本功能

  • Python問題紀錄#17-網站上傳到Heroku無法正常運作

  • Python問題紀錄#16-下載Git後VS Code顯示無法辨識

  • Python問題紀錄#15-抓取AJAX網站資料 medium網站標題範例

  • Python問題紀錄#14-抓取KKDAY網站資料遇到SSI憑證問題

Instagram

About Me

About Me

Gemma Hung

Hi! 我是產品工程師,目前在一家美商手工具就職,歡迎來到我的個人部落格。這裡會分享關於我學習與熱愛生活的一切!我的人生座右銘很俗又無聊,「Play Hard! Work Hard!」,對我來說人生就像一場遊戲,每個階段都是在不斷打怪、練等級的過程,所以我把人生當成一場闖關遊戲,每個階段都認真享受得到果實的過程。

  • Facebook
  • Instagram
  • Linkedin
  • Email

@2024 - All Right Reserved. Designed and Developed by Gemma

Powered by
...
►
Necessary cookies enable essential site features like secure log-ins and consent preference adjustments. They do not store personal data.
None
►
Functional cookies support features like content sharing on social media, collecting feedback, and enabling third-party tools.
None
►
Analytical cookies track visitor interactions, providing insights on metrics like visitor count, bounce rate, and traffic sources.
None
►
Advertisement cookies deliver personalized ads based on your previous visits and analyze the effectiveness of ad campaigns.
None
►
Unclassified cookies are cookies that we are in the process of classifying, together with the providers of individual cookies.
None
Powered by
Gemmart Design
  • 首頁
  • About me
  • ProjectsHot
  • BlogHot
    • 關於學習
    • 關於生活
    • 關於工作
  • Contact me