当前位置: 首页 > news >正文

Python爬虫之路(2):爬天气情况

 hello hello~ ,这里是绝命Coding——老白~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹
19d95742d45b4220ad0ae0359ffcba93.png

💥个人主页:绝命Coding-CSDN博客
💥 所属专栏:后端技术分享
这里将会不定期更新有关后端、前端的内容,希望大家多多点赞关注收藏💖

 历史文章:

Python爬虫速成之路(1):获取网页源代码-CSDN博客

使用requests.get()方法发送HTTP请求,并通过content属性获取网页的源代码

正则表达式(.*?):它可以匹配任意长度的字符串,比如abcde,正则表达式a(.*?)e,它就会匹配上bcd。(基本后续的爬虫这一个正则表达式就已经够用了,万能)

import urllib.request as http
import re#【天气预报】天气预报7天,10天,15天_全国天气网
url = 'http://tianqi.so.com/weather/101281901'
#获取网页源代码
content = http.urlopen(url).read().decode("utf-8")
#.*? 后面多个问号,代表非贪婪模式,也就是说只匹配符合条件的最少字符
pattern = re.findall(r'<div class="temperature">(.*?)</div>',content)
#<div class="temperature">13</div>
print('今天的温度是:{}°'.format(pattern[0]))

优化:

import requests  
import re  
content = requests.get("http://tianqi.so.com/weather/101281901").content.decode()  #获取网页源代码
pattern = re.findall(r'<div class="temperature">(.*?)</div>',content)  
print("今天的温度是:{}°".format(pattern[0]))

这里re.findall里面要求传入的是str类型
从str到bytes:调用方法encode().
从bytes到str:调用方法decode()

 更多精彩内容请关注:绝命Coding

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • macOS 的电源适配器设置
  • kotlin数据类型
  • 智慧金融-数据可视化
  • 搭建nginx https 反向代理 http tomcat服务实践。
  • 移动应用安全需求分析与安全保护工程
  • java内部类的本质
  • 计算器原生js
  • 第一章 深度学习和神经网络
  • sonar 8.9版本k8s安装部署
  • Jetpack Compose实现一个简单的微信UI
  • C/C++ 进阶(7)模拟实现map/set
  • 论文研读:ViT-V-Net—用于无监督3D医学图像配准的Vision Transformer
  • 《C++并发编程实战》笔记(一、二)
  • 抗量子密码算法:保障未来信息安全的新盾牌
  • 比赛获奖的武林秘籍:06 5 分钟速通比赛路演答辩,国奖选手的血泪经验!
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 【个人向】《HTTP图解》阅后小结
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • AWS实战 - 利用IAM对S3做访问控制
  • Consul Config 使用Git做版本控制的实现
  • isset在php5.6-和php7.0+的一些差异
  • Javascript基础之Array数组API
  • Java深入 - 深入理解Java集合
  • Java知识点总结(JavaIO-打印流)
  • October CMS - 快速入门 9 Images And Galleries
  • PHP变量
  • redis学习笔记(三):列表、集合、有序集合
  • spring-boot List转Page
  • uva 10370 Above Average
  • Vue2.x学习三:事件处理生命周期钩子
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 搭建gitbook 和 访问权限认证
  • 浮现式设计
  • 高程读书笔记 第六章 面向对象程序设计
  • 计算机常识 - 收藏集 - 掘金
  • 深度学习中的信息论知识详解
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 一道面试题引发的“血案”
  • 一个SAP顾问在美国的这些年
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • ​iOS实时查看App运行日志
  • ​马来语翻译中文去哪比较好?
  • #QT项目实战(天气预报)
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (2024,Vision-LSTM,ViL,xLSTM,ViT,ViM,双向扫描)xLSTM 作为通用视觉骨干
  • (4.10~4.16)
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第6节 (嵌套的Finally代码块)
  • (Redis使用系列) SpringBoot 中对应2.0.x版本的Redis配置 一
  • (二) 初入MySQL 【数据库管理】
  • (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】...
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .NET MVC之AOP
  • .Net mvc总结