Python爬蟲爬取杭州24時溫度并展示操作示例
本文實例講述了Python爬蟲爬取杭州24時溫度并展示操作。分享給大家供大家參考,具體如下:
散點圖 爬蟲杭州今日24時溫度 https://www.baidutianqi.com/today/58457.htm
- 利用正則表達式爬取杭州溫度
- 面向?qū)ο缶幊?/li>
- 圖表展示(散點圖 / 折線圖)
導(dǎo)入相關(guān)庫
import requests import re from matplotlib import pyplot as plt from matplotlib import font_manager import matplotlib
類代碼部分
class Weather(object):
def __init__(self):
self.url = 'https://www.baidutianqi.com/today/58457.htm'
self.headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36'}
#請求
def __to_requests(self):
response = requests.get(url=self.url,headers=self.headers)
return self.__to_paeser(response.content.decode('utf-8'))
#解析
def __to_paeser(self,html):
#正則表達式 要從數(shù)據(jù)循環(huán)的部分寫起 如果從循環(huán)的父標簽開始 , 則只會匹配到一個值 即父標簽下的某個標簽 , 而不是循環(huán)下的
pattern = re.compile('<li>.*?<font class="red">(.*?)</font>.*?<font class="blue">(.*?)</font></li>',re.S)
return re.findall(pattern,html)
#展示
def __to_show(self,data):
x = []
y = []
for value in data:
x.append(value[0])
y.append(int(value[1][-2:]))
#畫布
plt.figure(figsize=(15,8),dpi=80)
#中文 /System/Library/Fonts/PingFang.ttc C:\Windows\Fonts\simsun.ttc
my_font = font_manager.FontProperties(fname='/System/Library/Fonts/PingFang.ttc',size=18)
#x y 軸刻度 標簽 區(qū)分 y的刻度值/刻度標簽 和 y本身的值
plt.xticks(fontproperties=my_font,rotation=60)
y_ticks = ["{}℃".format(i) for i in range(min(y),max(y)+1)]
plt.yticks(range(min(y),max(y)+1),y_ticks,fontproperties=my_font,rotation=60)
# x y 軸說明
plt.xlabel('時間',color='orange',rotation=60,fontproperties=my_font)
plt.ylabel('溫度',color='orange',rotation=60,fontproperties=my_font)
#網(wǎng)格
plt.grid(alpha=0.4)
#標題
plt.title('當天時刻溫度低值變化',fontproperties=my_font)
#圖例
plt.legend(prop=my_font)
#作畫
# plt.scatter(x,y,label='2019-08-22')
plt.plot(x,y,color='red')
plt.show()
#操作
def to_run(self):
result = self.__to_requests()
self.__to_show(result)
調(diào)用并展示
if __name__ == '__main__': wt = Weather() wt.to_run()


更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python正則表達式用法總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計有所幫助。
- Python爬蟲爬取電影票房數(shù)據(jù)及圖表展示操作示例
- python爬蟲開發(fā)之使用python爬蟲庫requests,urllib與今日頭條搜索功能爬取搜索內(nèi)容實例
- python 爬蟲 實現(xiàn)增量去重和定時爬取實例
- python爬蟲爬取監(jiān)控教務(wù)系統(tǒng)的思路詳解
- python爬蟲爬取筆趣網(wǎng)小說網(wǎng)站過程圖解
- Python爬蟲爬取Bilibili彈幕過程解析
- Python爬蟲實現(xiàn)使用beautifulSoup4爬取名言網(wǎng)功能案例
- python爬蟲 2019中國好聲音評論爬取過程解析
- python爬蟲之爬取百度音樂的實現(xiàn)方法
- python爬蟲 爬取58同城上所有城市的租房信息詳解
- Python爬蟲爬取、解析數(shù)據(jù)操作示例
相關(guān)文章
python 百度aip實現(xiàn)文字識別的實現(xiàn)示例
百度aip將圖片或掃描件中的文字識別成可編輯的文本,本文主要介紹了python 百度aip實現(xiàn)文字識別,具有一定的參考價值,感興趣的可以了解一下2021-08-08
解決Pycharm下面出現(xiàn)No R interpreter defined的問題
今天小編就為大家分享一篇解決Pycharm下面出現(xiàn)No R interpreter defined的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
Python獲取接口數(shù)據(jù)的實現(xiàn)示例
本文主要介紹了Python獲取接口數(shù)據(jù)的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Python簡單實現(xiàn)Base64編碼和解碼的方法
這篇文章主要介紹了Python簡單實現(xiàn)Base64編碼和解碼的方法,結(jié)合具體實例形式分析了Python實現(xiàn)base64編碼解碼相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下2017-04-04
python實現(xiàn)超市商品銷售管理系統(tǒng)
這篇文章主要為大家詳細介紹了python實現(xiàn)超市商品銷售管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-10-10
對python 樹狀嵌套結(jié)構(gòu)的實現(xiàn)思路詳解
今天小編就為大家分享一篇對python 樹狀嵌套結(jié)構(gòu)的實現(xiàn)思路詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08

