104學習精靈

XPath

XPath
關注
邀請朋友
邀請朋友

Line

Facebook

複製連結

取消
.XPath:此角色主要負責設計與實施XPath查詢,以支持數據萃取及信息檢索,旨在提升商業數據的分析能力與決策效率。需具備扎實的XML及XSLT知識,熟悉數據庫操作及網頁爬蟲技術,並能夠跨部門合作,確保符合業務需求。具備良好的溝通技巧,以促進與IT及產品團隊之間的協調,因應台灣職場普遍重視團隊合作與效率的文化背景,強調靈活應變及問題解決能力,以應對快速變化的商業環境。
關於教室
關注人數 0 人
104人力銀行從職缺中挑選出常見技能所成立的官方教室,提供大家進行共學互動。
學習主持人
持續分享知識,
有機會成為官方教室主持人
教室標籤
關於教室
關注人數 0 人
104人力銀行從職缺中挑選出常見技能所成立的官方教室,提供大家進行共學互動。
學習主持人
持續分享知識,
有機會成為官方教室主持人
教室標籤
Hi~ 歡迎分享學習資源,有學習問題可匿名向Giver發問!
我要分享
我要提問

XPath 學習推薦

全部
影片
文章
Mike Ku

Learn Code With Mike品牌創辦人

2022/01/21

不可不知的Scrapy框架爬取下一層網頁資料實作
本文以INSIDE硬塞的網路趨勢觀察網站( https://www.inside.com.tw/ )首頁的熱門文章為例,來和大家分享如何在Scrapy框架中爬取下一層的網頁內容。
Q: Scrapy網頁爬蟲爬取下一層網頁內容
建立Scrapy網頁爬蟲檔案(hot_news.py),在parse()方法(Method)的地方,透過Scrapy框架的xpath()方法(Method),來爬取INSIDE硬塞的網路趨勢觀察網站的所有熱門文章下一層網頁網址,如下範例:
import scrapy
class HotNewsSpider(scrapy.Spider):
name = 'hot_news'
allowed_domains = ['www.inside.com.tw']
def parse(self, response):
post_urls = response.xpath(
"//a[@class='hero_menu_link']/@href").getall()
詳細的Scrapy xpath定位元素方法教學可以參考[Scrapy教學5]掌握Scrapy框架重要的XPath定位元素方法文章( https://www.learncodewithmike.com/2021/01/scrapy-xpath-selectors.html )。取得了所有熱門文章的下一層網頁網址後,就可以透過迴圈來進行請求,如下範例:
import scrapy
class HotNewsSpider(scrapy.Spider):
name = 'hot_news'
allowed_domains = ['www.inside.com.tw']
def parse(self, response):
post_urls = response.xpath(
"//a[@class='hero_menu_link']/@href").getall()
for post_url in post_urls:
yield scrapy.Request(post_url, self.parse_content)
其中Request方法(Method)的第一個參數,就是「請求網址」,也就是熱門文章的下一層網頁網址,而第二個參數就是請求該網址後,所要執行的方法(Method),而parse_content()方法(Method)中,就是來爬取熱門文章的下一層網頁內容,以本文為例就是包含「文章標題」及「文章摘要」。
接著,就可以在parse_content()方法(Method)中,同樣使用Scrapy框架的xpath()方法(Method),來爬取「文章標題」及「文章摘要」,如下範例:
import scrapy
class HotNewsSpider(scrapy.Spider):
...
def parse_content(self, response):
# 熱門文章標題
hot_news_title = response.xpath(
"//h1[@class='post_header_title js-auto_break_title']/text()").get()
# 熱門文章摘要
hot_news_intro = response.xpath(
"//div[@class='post_introduction']/text()").get()
print(f"熱門文章標題:{hot_news_title},\n熱門文章摘要:{hot_news_intro}")
利用以下的指令執行Scrapy網頁爬蟲:
$ scrapy crawl hot_news
如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike(https://www.learncodewithmike.com/2021/02/scrapy-follow-links-and-collect-data.html
)網站觀看更多精彩內容。
看更多
2 0 605 0

熱門精選

104學習精靈

產品

06/13 12:46

【免費報名:產品經理學習營說明會】零經驗轉職產品經理!有經驗PM累積產品作品資歷!|商業思維學院X104人力銀行
▮ 產品經理職缺拆解大公開,學會有方法的準備面試、介紹作品
▮ 一次搞懂產品職缺與展現自己的最佳攻略,產品經理學習營帶你一起職涯升級!
根據 104 人力銀行統計,近年來產品經理相關職缺在台灣增加了 50 % 以上,各種相關職缺中,如何切中要求的展現作品與經歷,面對面試或準備作品時,可以更好的展現長處,成為你是否能獲得理想 offer 的重要關鍵!
▮ 參與這場講座你將了解到
1. 產品經理職缺拆解:不同的職缺要求,代表什麼意思,如何藉此展現自己的亮點?
2. 產品經理學習營如何幫助同學累積產品資歷
3. 學習營是什麼,有什麼特色?
4. 學習內容與實作題目
5. 如何參與與產出
6. QA
【不要錯過,趕緊來報名】
看更多
1 0 5933 0
學習精靈

02/28 00:00

6 0
Mike Ku

Learn Code With Mike品牌創辦人

2022/01/15

掌握Scrapy框架重要的CSS定位元素方法(上)
想要開發Python網頁爬蟲的朋友,都會知道定位元素(Element)是一個非常重要的動作,Scrapy框架本身就有提供自己的定位元素(Element)方法(Method),包含CSS與XPath兩種,本文就以INSIDE硬塞的網路趨勢觀察網站-AI新聞( https://www.inside.com.tw/tag/ai )為例,先來和大家分享在Scrapy框架中,如何利用CSS的定位元素(Element)方法(Method),爬取想要的網頁內容。
Q: Scrapy如何利用CSS方法取得單一元素值?
CSS(Cascading Style Sheets)階層樣式表相信大家都不陌生,可以自訂樣式的類別來裝飾網頁,像是字體顏色、粗體等,所以在利用Scrapy框架開發網頁爬蟲時,也就能夠利用CSS樣式類別,來定位想要爬取的網頁元素(Element)。
前往INSIDE硬塞的網路趨勢觀察網站-AI新聞,在文章標題的地方,點擊滑鼠右鍵,選擇檢查,可以看到它的CSS樣式類別。假設想要在Scrapy框架中,利用CSS樣式類別來取得網頁的單一元素值,也就是單一文章的標題,就可以在spiders/inside.py的parse()方法(Method)中,使用css()方法(Method)來定位單一元素(Element),如下範例:
import scrapy
class InsideSpider(scrapy.Spider):
name = 'inside'
allowed_domains = ['www.inside.com.tw']
def parse(self, response):
title = response.css("a.js-auto_break_title::text").get()
print(title)
接著,利用以下的指令執行inside網頁爬蟲:
$ scrapy crawl inside
以上範例,response就是Scrapy框架請求後的回應結果,接著,呼叫css()方法,傳入所要定位的HTML標籤<a>,點的後面加上它的CSS樣式類別,由於要取得元素(Element)的文字,所以在加上「::text」關鍵字,最後,呼get()方法(Method)取得單一元素(Element)。
Q: Scrapy如何利用CSS方法取得多個元素值?
而在Scrapy框架中,想要爬取網頁多個元素值,則呼叫getall()方法(Method)即可,如下範例:
import scrapy
class InsideSpider(scrapy.Spider):
name = 'inside'
allowed_domains = ['www.inside.com.tw']
def parse(self, response):
titles = response.css("a.js-auto_break_title::text").getall()
print(titles)
可以看到getall()方法(Method)回傳的是一個串列(List),包含了所有樣式類別為「js-auto_break_title」的<a>標籤文字,接下來,利用迴圈即可取得其中的文章標題,如下範例:
import scrapy
class InsideSpider(scrapy.Spider):
name = 'inside'
allowed_domains = ['www.inside.com.tw']
def parse(self, response):
titles = response.css("a.js-auto_break_title::text").getall()
for title in titles:
print(title)
如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike( https://www.learncodewithmike.com/2021/01/scrapy-css-selectors.html
)網站觀看更多精彩內容。
看更多
2 0 183 0
學習精靈

10/13 00:00

1 0

推薦給你

104學習精靈

產品

06/12 16:49

如何產出好的 Prompt?讓 AI 成為你真正的幫手+ 五種常用 Prompt 範本
近年來,AI 工具如 ChatGPT、Claude、Gemini 等快速進入我們的工作與生活,不論是寫文案、總結報告、規劃行程,甚至是撰寫程式碼,只要下對指令(prompt),AI 幾乎無所不能。
但問題來了:為什麼我問的問題,AI 給的回答總是不夠精準?
這時候,你可能缺的不是一個更聰明的 AI,而是一個更好的 prompt。
本篇文章將帶你一步步掌握「好 prompt」的四大原則 + 五種實用範本 + 常見錯誤避雷指南,幫助你從「AI 使用者」進階成「AI 操控師」。
一、什麼是 Prompt?
Prompt,簡單來說就是你對 AI 下達的「指令」或「提問內容」。
它的形式可能是:
一段文字(例如:「請幫我寫一封推薦信」)
一個問題(例如:「如何向上管理主管?」)
一組指令(例如:「用表格整理優缺點,並推薦最適合的解法」)
Prompt 就像你對 AI 下達的任務說明書,越清楚、越有邏輯,AI 才越能對症下藥。
二、好 Prompt 的 5大原則:CLEAR
我們建議用以下的「CLEAR」五字訣,來檢查你的 prompt 是否足夠明確:
C - Context(情境)
提供背景資訊,讓 AI 理解你的角色、目的與任務脈絡。
➤ 例:「我是一位求職中的社會新鮮人……」
L - Language(語氣與格式)
指定你想要的語氣風格、格式形式或語言版本。
➤ 例:「請用輕鬆幽默的語氣」、「請用英文回答」
E - End Goal(輸出目標)
說清楚你想要的最終結果,讓 AI 知道你是要報告、表格、文案還是清單。
➤ 例:「我要一篇 500 字的部落格草稿」
A - Action(動作)
告訴 AI 你要它「做什麼」——例如撰寫、比較、總結、建議等。
➤ 例:「請幫我比較這三個方案的優缺點」
R - Rules(規則)
有特定限制或格式規範的話要明講,例如字數、語氣、格式或禁用詞。
➤ 例:「限制在 200 字內」、「不要使用專業術語」
三、五種常用 Prompt 範本
以下是五個實用的 prompt 模板,無論職場、學習還是生活應用都相當好用:
1. 會議紀錄整理 Prompt
「我是一名專案經理,以下是我們產品開發部門的會議紀錄。請幫我整理成正式內部報告,內容分為三段:1. 會議摘要(限 100 字內)、2. 決策事項(條列式)、3. 待辦事項(包含負責人與期限)。語氣請保持正式精簡。」
2. 專案建議書撰寫 Prompt
「我是一位行銷專案負責人,目前正在提報一個新品行銷提案,目標是提升產品曝光率。請幫我撰寫一份約 500 字的專案建議書草稿,包含以下四段:1. 專案背景、2. 行銷目標、3. 執行方式、4. 預期效益。語氣請保持專業、有說服力,採用第三人稱,不用提及預算細節。」
3. 表格資料統整 Prompt
「以下是三個工具的特性說明,請幫我整理成 5 欄表格(項目名稱、說明、優點、風險、建議採行對象),表格格式適合投影片簡報中使用,內容限於 20 字以內/欄,語氣請精簡明確,避免冗詞。」
4. Email 撰寫 Prompt
「請幫我撰寫一封給內部人資主管的 Email,主旨是:申請部門教育訓練預算。語氣正式但親切,內容包含三段:1. 教育訓練目的與效益、2. 執行時程與預估費用、3. 對團隊發展的幫助。結尾請加入敬語與簽名,整封信字數控制在 250 字以內。」
5. 方案比較分析 Prompt
「我是一位採購經理,正評估三個軟體工具供應商,目的是選出性價比最佳的方案。請幫我以表格形式,從五個面向(功能完整性、價格、技術支援、使用便利性、風險)比較三者,並以條列方式給出建議首選及選擇理由,語氣請保持客觀分析。」
四、避免 3 個常見錯誤
◆問題太模糊:「幫我寫一下這個」,寫什麼?給誰看?用途是什麼?AI 根本抓不到重點。
◆輸出格式沒說清楚:你想要清單、表格、段落還是流程圖?請先講清楚。
◆一次問太多:AI 回答會變散亂。先拆解問題,一步步來,效果更好。
Prompt 是一種新時代的溝通力
AI 工具不會自動變成你的超能力,會提問、懂得溝通,才是未來的關鍵能力。
把 prompt 當作你對 AI 的「任務設計」,越清楚,AI 越能「幫你幫到點上」。
從今天開始,練習寫好 prompt,就是你打開 AI 潛力寶庫的第一步!
看更多
3 0 2355 4
你可能感興趣的教室