爬取某些網站政策性文件及數據

訪問一些政府網站並獲取網頁
根據需求解析出其中的政策性文件以需求的數據
保存到本地,如果失敗則記錄在日誌中
github: https://github.com/hailinli/crawGovData/


一、需求介紹(示例南京)

需求介紹見文檔https://github.com/hailinli/crawGovData/tree/master/data/%E9%9C%80%E6%B1%82
下面爲一個市的需求示例

  1. 進入政府(部門)官網 http://www.nanjing.gov.cn/index.html 找出其中的政府文件欄目,一般在信息公開中
    這裏寫圖片描述

  2. 進入政府文件網站http://www.nanjing.gov.cn/xxgk/szf/?id=47493紅色畫圈部分爲需要採集的文章。
    這裏寫圖片描述
    採集範圍爲:市政府文件、市政府辦公廳文件、部門文件、區文件

  3. 進入文章頁面
    這裏寫圖片描述
    將網頁其中的部分內容爬取存儲到本地TXT(名稱爲文件標題)
    需採集網頁URL、文件信息、文件內容
    將網頁中的文件下載存儲到相應文件夾中,以文章標題命。
    具體參考示例
    這裏寫圖片描述

  4. 網頁中有下載鏈接或者附件的也需下載到相應的文件夾中
    這裏寫圖片描述

二、代碼

源代碼: https://github.com/hailinli/crawGovData/

  1. https://github.com/hailinli/crawGovData/blob/master/crawBase.py 爬蟲基類,主要用於下載網頁(包括啓動瀏覽器下載和程序下載網頁),下載圖片,獲取某html標籤的文字內容,下載某大標籤的所有文字。
  2. https://github.com/hailinli/crawGovData/blob/master/log.py 日誌類,主要用於寫日誌,用於保存程序運行過程所需日誌,運行後日志保存在logs文件中,以日期命名。
  3. craw****.py 主要對應於具體某市網站的網站數據抓取類。

三、 運行

cd crawGovData/
python craw****.py  # craw****.py 指具體的某市網站數據抓取類

如爬取太原市的數據

cd crawGovData/crawTaiyuann/
python crawTaiyuan.py
python crawTaiyuanFgw.py
python crawTaiyuanWjw.py
...
python crawTaiyuanjxw.py    

環境

  1. python3
  2. requests2.18
  3. lxml4.2
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章