Python爬蟲教程-02-使用urlopen

肖朋偉發表於2018-08-05

Spider-02-使用urlopen

做一個最簡單的python爬蟲,使用爬蟲爬取:智聯招聘某招聘資訊的DOM

urllib

  • 包含模組
    - urllib.request:開啟和讀取urls
    - urllib.error:包含urllib.request產生的常見錯誤,使用try捕捉
    - urllib.parse:包含解析url的方法
    - urllib.robotparse:解析robots.txt檔案
    robots:機器人協議,放在網站的開頭,供給爬蟲讀取,當爬蟲讀到robots之後,就知道那些是允許爬取的資料,哪些是禁止爬取的資料
    (爬蟲道德問題:1.不許過頻繁爬取 2.不許爬取禁止內容)
  • 案例v1 (使用PyCharm開發工具,配置python直譯器,建立python檔案)
    - 我把程式碼放在github了,可以直接下載,地址:
    - py01v1.py檔案:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py01v1.py
    - request.py文件檔案:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/request.py
   # py01v1.py
   from urllib import request
   
   # 使用urllib.request請求一個網頁的內容,並把內容列印出來
   if __name__ == '__main__':
   
       # 定義需要爬的頁面
       url = "https://jobs.zhaopin.com/CC375882789J00033399409.htm"
       # 開啟相應url並把頁面作為返回
       rsp = request.urlopen(url)
       # 按住Ctrl鍵不送,同時點選urlopen,可以檢視文件,有函式的具體引數和使用方法

       # 把返回結果讀取出來
       html = rsp.read()

       print(html)

上面簡單幾行程式碼就可以爬取頁面的HTML程式碼了
右鍵執行,截圖如下
這裡寫圖片描述
但是,我們爬取到的程式碼是不能自行顯示中文的,需要解碼處理
py02v1.py檔案:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py02v1.py

   # py02v1.py
   from urllib import request
  
   if __name__ == '__main__':
   
       url = "https://jobs.zhaopin.com/CC375882789J00033399409.htm"
       rsp = request.urlopen(url)
       # 按住Ctrl鍵不送,同時點選urlopen,可以檢視文件,有函式的具體引數和使用方法

       html = rsp.read()
       # 解碼
       html = html.decode()

       print(html)

解碼後效果:
這裡寫圖片描述
恭喜你,最簡單的爬蟲就已經學會啦!
如果執行失敗,可能是
1.【爬取的連線失效】,更換最新的地址就可以了
2.【Python環境問題】,這裡不做仔細介紹,請自行【百度】解決,也可聯絡博主
QQ:1370911284
微信:18322295195

更多文章連結:Python 爬蟲隨筆


  • 本筆記學習於圖靈學院python全棧課程
  • 本筆記不允許任何個人和組織轉載

相關文章