104學習精靈

資料擷取

資料擷取
關注
邀請朋友
邀請朋友

Line

Facebook

複製連結

取消
關於教室
關注人數 1 人
104人力銀行從職缺中挑選出常見技能所成立的官方教室,提供大家進行共學互動。
學習主持人
持續分享知識,
有機會成為官方教室主持人
教室標籤
關於教室
關注人數 1 人
104人力銀行從職缺中挑選出常見技能所成立的官方教室,提供大家進行共學互動。
學習主持人
持續分享知識,
有機會成為官方教室主持人
教室標籤
Hi~ 歡迎分享學習資源,有學習問題可匿名向Giver發問!
我要分享
我要提問

資料擷取 學習推薦

全部
影片
文章
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 570 0

熱門精選

104學習精靈

產品

11/15 12:57

【最新】2024年11月AI課程熱門排行榜TOP 10:最受歡迎的AI學習課程推薦
從AI基礎知識到應用,市面上提供了各種AI學習課程:AI線上課程、AI實體課程,無論您是初學者還是專業人士,都可以找到適合自己的AI課程。本文將為您揭曉2024年11月最受歡迎的AI課程排行榜,幫助您輕鬆找到優質的AI學習資源,快速掌握AI技能。
本篇透過從104課程中心的用戶學習大數據,整理出大家都在搜尋的TOP 10 熱門課程;可透過排行榜,找到你所需的學習內容,增進職場的職能成長,加強自我競爭力,打造你的職涯藍圖!
第1名。ChatGPT x Excel | 職場必學商務數據分析術
講師將以系統化教學法,教授數據分析常用情境,搭上火紅 ChatGPT ,步驟式實戰,能隨學即用,讓你知道如何在工作中運用所學到的技能!
第2名。AI資料科學家【 聽課全系列 】
「基礎思維」AI資料科學的新朋友,必定要了解一下人工智慧的歷史里程碑與事件,從這裡出發,您也能與不熟悉這個領域的朋友侃侃而談地分享您所學領域的轉變與趨勢,而初學者免不了學習的十字路口,不知道該從哪個部分開始學習AI,這裡也會給您適合適當的指引。常常被混的網頁爬蟲與ETL您真的認識並了解嗎?聽聽看TibaMe的講師們怎麼說吧!
第3名。生成式AI應用速成:商業溝通師-數位行銷課(12/21開課)
🔴報名截止日:2024/12/8🔴
你可以學到
🌟AI 行銷創作零基礎也能秒上手|不需任何行銷經驗,快速學會生成式 AI 工具,輕鬆打造吸睛行銷素材。
🌟行銷策略效果爆發式成長| 有效運用 AI 提升執行力,讓行銷效率飆升、策略效果倍增。
🌟精準鎖定目標受眾,打中痛點| 用 AI 技術解析消費者行為,精準掌握市場趨勢,一次抓住受眾需求。
🌟品牌形象全面升級| AI 創造獨特行銷風格,讓品牌成為目光焦點,迅速在市場中脫穎而出。
第4名。2小時輕鬆學AI | 基礎觀念與應用
從資料科學的基礎觀念談起、商業智慧、資料探勘、影像辨識等技術應用,最後再討論企業實際導入人工智慧所需的相關流程。
第5名。生成式AI應用速成:創作詠唱師-影音創作課(11/30開課)
🔴報名截止日:2024/11/17🔴
你可以學到
🌟虛擬角色打造 | 從角色設計、到AI影片製作,一站式打造你的專屬虛擬網紅。
🌟短影音製作 | 運用AI工具,快速生成各種特效、濾鏡,製作出精緻的短影音。
🌟內容行銷 | 學習如何利用AI工具製作出更能觸動觀眾的內容。
第6名。生成式AI工具應用實戰 (線上直播課程)
你可以學到
行銷廣告文案+社群策略及內容+SEO生成+BingAI繪圖,一次學會生成式AI工具應用!
本課程「生成式AI工具應用」旨在教導學員如何利用最先進的生成式AI工具,特別是ChatGPT和微軟Bing AI繪圖工具,來提升行銷文案、社群媒體內容、SEO優化、廣告文案創作以及內容行銷的效率和成效。
第7名。生成式AI應用速成:創作詠唱師-繪圖設計課(12/21開課)
🔴報名截止日:2024/12/8🔴
你可以學到
🌟成為AI設計高手| 從設計小白變身AI設計達人,自信接下各種設計挑戰。
🌟擴大職涯發展| 掌握AI設計技能,提升職場競爭力,開拓更多職涯發展機會。
🌟節省設計成本| 減少外包設計費用,提高工作效率,為企業創造更多價值。
🌟實現創意無限| 突破傳統設計框架,用AI工具打造出獨一無二的視覺作品。
第8名。AI應用時代|從邏輯思維到文字溝通,從職場複利到高效生活
藉由AI助手的力量,更高效地完成商務工作、激發靈感。也透過AI協助經營社群,包含工作行程、日常旅遊、飲食規劃等,提高短影音規劃的效率,進而產出斜槓複利。
第9名。一次搞懂 ChatGPT 工作法 | 5分鐘看懂,立即上手 AI 應用觀念!
5分鐘輕巧學:圖解式影音 X 25應用情境 X 30組AI神器
第10名。AI x 產品企劃(產品開發)實務應用班
你可以學到
往在產品企劃及開發上,所面臨到的難以解決的疑難問題,在未來都有機會利用AI工具進一步改善,取得更有效的解決方案。
本課程將教會您如何快速掌握AI在商業分析、創意生成、行銷文案、用戶旅程設計與消費者行為洞察中的應用,並了解如何將這些工具應用於產品企劃流程中。
更多AI課程推薦:
2 0 2998 0
學習精靈

10/18 00:00

13 0
Mike Ku

Learn Code With Mike品牌創辦人

2022/01/19

一定要懂的Scrapy框架結合Gmail寄送爬取資料附件秘訣
本文將爬取的結果存入CSV檔案後,透過Gmail附件郵寄給使用者。在開始之前,大家可以先參考[Python實戰應用]Python寄送Gmail電子郵件實作教學文章( https://www.learncodewithmike.com/2020/02/python-email.html )的第二節步驟,取得Gmail的應用程式密碼,以便能夠利用它的SMTP(簡易郵件傳輸協定)來發送郵件。
Q: Scrapy MailSender結合Gmail發送郵件
在Scrapy網頁爬蟲框架中,想要實作發送電子郵件的功能,可以使用內建的MailSender模組(Module),透過基本的設定即可達成。開啟Scrapy專案的settings.py設定檔,加入以下的Gmail SMTP設定:
MAIL_HOST = "smtp.gmail.com"
MAIL_PORT = 587
MAIL_FROM = "申請Gmail應用程式密碼所使用的電子郵件帳號"
MAIL_PASS = "Gmail應用程式密碼"
MAIL_TLS = True
並且,將[Scrapy教學7]教你Scrapy框架匯出CSV檔案方法提升資料處理效率文章( https://www.learncodewithmike.com/2021/01/scrapy-export-csv-files.html )中所建立的CsvPipeline資料模型管道設定開啟,如下範例:
ITEM_PIPELINES = {
'news_scraper.pipelines.CsvPipeline': 500,
}
設定完成後,開啟ITEM PIPELINE資料模型管道(pipelines.py)檔案,引用Scrapy框架的設定檔及MailSender模組(Module),如下範例:
from itemadapter import ItemAdapter
from news_scraper import settings
from scrapy.mail import MailSender
接著,在CsvPipeline類別(Class)的close_spider()方法(Method)中,來建立Scrapy MailSender物件,以及指定Gmail的附件,包含「附件顯示的名稱(attach_name)」、「網際網路媒體類型(mime_type)」及「檔案物件(file_object)」,如下範例:
class CsvPipeline:
...
def close_spider(self, spider):
self.exporter.finish_exporting()
self.file.close()
mail = MailSender(smtphost=settings.MAIL_HOST,
smtpport=settings.MAIL_PORT,
smtpuser=settings.MAIL_FROM,
smtppass=settings.MAIL_PASS,
smtptls=settings.MAIL_TLS)
attach_name = "posts.csv"
mime_type = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
file_object = open("posts.csv", "rb")
return mail.send(to=["example@gmail.com"],
subject="news",
body="",
attachs=[(attach_name, mime_type, file_object)])
如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike(https://www.learncodewithmike.com/2021/02/scrapy-sending-gmail.html
)網站觀看更多精彩內容。
2 0 154 0
學習精靈

05/15 00:00

4 0

推薦給你

知識貓星球

喵星人

1小時前

專案 Kickoff 前的準備重點有哪些?確保成功的關鍵,附範例檢查表
在專案 Kickoff 前,準備充分是確保成功的關鍵。必須明確專案目標與範疇,識別利害關係人,準備背景資料與初步計劃,並設計會議議程。同步確認溝通計劃與會議工具,建立統一共識,預測可能風險。這樣可讓會議高效推進,為專案打下穩固基礎。以下是需要準備的重點:
1. 明確專案目標與範疇
- 定義專案目標:確認這個專案解決什麼問題、要實現的價值是什麼。
- 確認範疇 (Scope):哪些工作內容包含在專案內,哪些排除在外。
2. 識別利害關係人
- 確認專案中相關的 主要利害關係人 (Stakeholders),包括內部 (如設計、開發、營運團隊) 和外部 (如客戶或合作夥伴)。
- 確保利害關係人都清楚 Kickoff 的目的,並通知他們參與會議。
3. 建立初步專案計劃
- 時程規劃 (Timeline):提供專案階段性的高層級時間表。
- 里程碑 (Milestones):標出主要目標和交付物 (Deliverables)。
- 資源需求:預估專案需要的資源 (人力、工具、預算等)。
4. 準備背景資料
- 提供專案的背景資料 (如市場調查、競爭分析、用戶需求或業務目標)。
- 確保團隊對專案的現狀和機會點有一致的理解。
5. 明確溝通計劃
- 設定溝通流程 (如例行會議、更新頻率、溝通工具:Slack、Trello、Notion 等)。
- 確認報告的方式與頻率。
6. 設計 Kickoff 議程
- 引言 (Introduction):專案背景、目標、重要性。
- 角色分配:介紹各團隊成員及其角色。
- 計劃概述:展示專案範疇、里程碑和大致時程。
- 期望 (Expectations):各方對專案成功的期望以及可能的風險點。
- Q&A:確保所有人對專案目標一致。
7. 提前確認工具與文件
- 確認所有需要的文件是否已經準備妥當 (如簡報、議程表、相關報告)。
- 測試會議工具 (如 Zoom、Microsoft Teams 等),避免技術問題。
8. 風險預估與假設
- 識別可能的風險,並制定應對策略。
- 確認有哪些假設需要團隊共識。
9. 建立 Kickoff 的預期結果
- 統一目標與方向:參與者對專案的背景和目標有一致理解。
- 行動計劃:Kickoff 後的下一步行動具體明確。
【範例檢查表】
[ ] 專案目標與範疇已明確。
[ ] 利害關係人已確認並通知。
[ ] 背景資料已準備。
[ ] Kickoff 議程與簡報完成。
[ ] 會議工具已測試完畢。
準備越周全,Kickoff 會議就越能成功地啟動專案!如果需要幫忙整理 Kickoff 簡報或議程範本,也可以提出! 😊
0 0 67 0
你可能感興趣的教室