Python如何爬取杭州24时温度并展示-创新互联

这篇文章给大家分享的是有关Python如何爬取杭州24时温度并展示的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的夏邑网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

散点图 爬虫杭州今日24时温度 https://www.baidutianqi.com/today/58457.htm

  1. 利用正则表达式爬取杭州温度

  2. 面向对象编程

  3. 图表展示(散点图 / 折线图)

导入相关库

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):
    #正则表达式 要从数据循环的部分写起 如果从循环的父标签开始 , 则只会匹配到一个值 即父标签下的某个标签 , 而不是循环下的
    pattern = re.compile('
  • .*?(.*?).*?(.*?)
  • ',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 轴刻度 标签 区分 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)     #网格     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)

    调用并展示

    if __name__ == '__main__':
      wt = Weather()
      wt.to_run()

    Python如何爬取杭州24时温度并展示
    Python如何爬取杭州24时温度并展示

    感谢各位的阅读!关于“Python如何爬取杭州24时温度并展示”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

    另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


    本文标题:Python如何爬取杭州24时温度并展示-创新互联
    标题网址:http://azwzsj.com/article/cspodh.html