D26的作業到底是要做什麼? 完完全全看不懂耶
學習透過命令列建立專案與爬蟲
請在 https://www.ptt.cc/bbs/index.html 中設定一篇文章當作目標網頁,
並改寫 scrapy 中的 start_urls
撰寫完整邏輯並執行爬蟲
Hint: PTT 爬蟲先前為了避開「是否滿 18」的頁面,透過 cookies 解決,這邊可以透過相同的方式繞過
scrapy.Request(..., cookies={'over18': '1'})
請點擊下方檢視範例參考Data專案資料夾,作業請提交產出的py檔案至github後,回到官網提交github作業連結。
1. 首先這個範例中的ZIP FILE請問是怎樣使用的? 把所有檔案解壓縮然後依相同結構丟到JUPYTER嗎?
2. "撰寫完整邏輯並執行爬蟲" <--請問是在哪裡撰寫? PTTCrawler.py 嗎? 但不是本來已經寫好了嗎? 要修改的只是"start_urls"嗎?
3. "Hint: PTT 爬蟲先前為了避開「是否滿 18」的頁面,透過 cookies 解決,這邊可以透過相同的方式繞過scrapy.Request(..., cookies={'over18': '1'})" <-- 這不是本來也已經寫好了嗎?
4. "作業請提交產出的py檔案" <-- 不了解到底要提交什麼...就只是改寫 PTTCrawler.py 中的 start_urls然後提交嗎?
5. 最後請問這個Scrapy在JUPYTER如何執行? 開一個新的.ipynb然後import scrpay嗎? 可否提供一個例子供參考?
請老師幫忙回答,謝謝。
回答列表
-
2020/06/30 下午 09:01Jeffrey贊同數:0不贊同數:0留言數:0
問題五: 如何執行 Scrapy?
在 Jupyter裡面 :
import scrapy, json
在命令列的環境裡面 :
scrapy crawl photo -o output.json # 輸出為JSON文件
scrapy crawl photo -o output.csv # 輸出為CSV文件
-
2020/06/30 下午 09:04Jeffrey贊同數:0不贊同數:0留言數:0
-
2020/06/30 下午 09:34Jeffrey贊同數:0不贊同數:0留言數:0
關於作業的部分:
2. "撰寫完整邏輯並執行爬蟲" <--請問是在哪裡撰寫? PTTCrawler.py 嗎? 但不是本來已經寫好了嗎? 要修改的只是"start_urls"嗎?
3. "Hint: PTT 爬蟲先前為了避開「是否滿 18」的頁面,透過 cookies 解決,這邊可以透過相同的方式繞過scrapy.Request(..., cookies={'over18': '1'})" <-- 這不是本來也已經寫好了嗎?
4. "作業請提交產出的py檔案" <-- 不了解到底要提交什麼...就只是改寫 PTTCrawler.py 中的 start_urls然後提交嗎?
回答:
1. https://www.ptt.cc/bbs/index.html中設定一篇文章當作目標網頁
2. 參考 PTTCrawler.py 的寫法, 把選定目標網頁的內容爬回來, 網頁內容不一定跟 PPTCrawler.py 的網頁完全一樣哦, 要修改,
3. Hint 是提供給你參考, 所以, 要確認有放到程式碼
4. 應該也可以修改範例後提交, 幫你跟主辦單位確認一下
以下有一篇提供參考
https://bigdatafinance.tw/index.php/tech/coding/525-python-scrapy
-
2020/07/01 上午 01:10張維元 (WeiYuan)贊同數:0不贊同數:0留言數:0
1. 首先這個範例中的ZIP FILE請問是怎樣使用的? 把所有檔案解壓縮然後依相同結構丟到JUPYTER嗎?
=> 用終端機執行,投影片當中沒有寫嗎?
-
2020/07/01 上午 01:10張維元 (WeiYuan)贊同數:0不贊同數:0留言數:0
2. "撰寫完整邏輯並執行爬蟲" <--請問是在哪裡撰寫? PTTCrawler.py 嗎? 但不是本來已經寫好了嗎? 要修改的只是"start_urls"嗎?
=> 是修改 PTTCrawler.py 調整成題目的要求