logo
Loading...

D26的作業到底是要做什麼? 完完全全看不懂耶 - Cupoy

學習透過命令列建立專案與爬蟲請在 https://www.ptt.cc/bbs/index.html...

pycrawler,pycrawler-d26

D26的作業到底是要做什麼? 完完全全看不懂耶

2020/06/29 下午 05:05
Python網路爬蟲討論版
Leo Siu
觀看數:3
回答數:9
收藏數:0
pycrawler
pycrawler-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:01
    Jeffrey
    贊同數: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:04
    Jeffrey
    贊同數:0
    不贊同數:0
    留言數:0

    問題一: ZIP FILE請問是怎樣使用的? 把所有檔案解壓縮然後依相同結構丟到JUPYTER嗎?

    兩個方式, 直接在Jupyter 裡面載入套件


    import gzip
    with gzip.open('file.txt.gz', 'rb') as f:
     file_content =
    f.read()


    import bz2
    with bz2.BZ2File('file.txt.bz2', 'r') as f:
     file_content =
    f.read()

  • 2020/06/30 下午 09:34
    Jeffrey
    贊同數: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 調整成題目的要求