北方“喫土”預警,沙塵暴又雙叒叕來了

 

4月10日晚間,一場影響北方大部地區的沙塵暴引發大家的關注,北京發佈大風、沙塵暴雙預警,不少網友表示出門像打開“護眼模式”並且值得關注的是目前的這次沙塵天氣過程是今年以來第8次,常年同期的沙塵過程次數是5至6次,今年沙塵出現的次數略偏多。


不知道歷史上每年出現沙塵天氣的次數相比今年是怎麼樣的,這裏我們通過python爬取爬取歷史天氣數據來進行分析。
首先簡單的進行爬取步驟分析,
1.python庫的選擇,這裏我使用的是Python中的BeautifulSoup庫進行爬取,BeautifulSoup庫是一個能夠從HTML文件中提取數據的Python庫,由於我們獲取的HTML文件包含整個網頁內容,我們還需要定位到我們所需要獲取的數據部分。
2.分析網頁結構,需要先打開我們要爬取的網頁,使用谷歌瀏覽器等開發者工具快速定位到我們所需要的HTML內容:
3.存儲數據,數據獲取到後需要將數據以結構化的方式存儲起來。
接下來就是爬取數據的實際操作,因爲天氣網大量訪問是會觸發一些反爬機制的,所以爬取過程中在代碼裏面添加了代理IP,選擇的是由億牛雲提供的隧道爬蟲代理,因爲不管是代理延遲,訪問速度,穩定性都是最優的。實現代碼如下:

#! -*- encoding:utf-8 -*-

    import requests
    import random

    # 要訪問的目標頁面
    targetUrl = "https://www.tianqi.com//"

    # 要訪問的目標HTTPS頁面
    # targetUrl = "https://www.tianqi.com//"
    proxyHost = "t.16yun.cn"
    proxyPort = "31111"
    # 代理驗證信息
    proxyUser = "udfejfhk"
    proxyPass = "568547"

    proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {
        "host" : proxyHost,
        "port" : proxyPort,
        "user" : proxyUser,
        "pass" : proxyPass,
    }

    # 設置 http和https訪問都是用HTTP代理
    proxies = {
        "http"  : proxyMeta,
        "https" : proxyMeta,
    }


    #  設置IP切換頭
    tunnel = random.randint(1,10000)
    headers = {"Proxy-Tunnel": str(tunnel)}



    resp = requests.get(targetUrl, proxies=proxies, headers=headers)

    print resp.status_code
    print resp.text
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章