学习爬虫的目的便是模拟浏览器向服务器发出请求,进而获取所需数据。

爬虫可以分为抓取页面、分析页面和存储数据三步。

每一步中,python都有强大的模块来让我们使用。

今天先来学习请求库urllib的基本使用。

(python的安装请参考python开发环境搭建)

安装urllib库

(urllib是python内置的库,一般不需要额外安装)

方法一 win+r 打开命令行,然后输入pip install urllib安装urllib库。输入cmd打开命令行输入pip install urllib 回车,等待安装完成即可

在命令行中输入python进入python,

输入import urllib,若结果如下则说明urllib安装成功:urllib 安装成功

方法二:打开https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient,找到对应版本的urllib的wheel文件,下载到本地,然后再用pip 安装即可(注意:下载的文件切不可重命名,要用绝对路径)。

使用urllib

urllib包含四个模块:request:HTTP请求模块,可以用来发送请求。

error :异常处理模块。

parse :提供了许多url处理方法,比如拆分、解析等。

robotparser :用的比较少,可以略过。利用最基本的urlopen()方法,可以完成最基本的简单网页的GET请求抓取。urllib.request.urlopen(url,data=None,[timeout,]*,cafile=None,capath=None,cadefault=False,context=None)下面看一个具体的例子: 打开【西安天气】西安天气预报,蓝天,蓝天预报,雾霾,雾霾消散,天气预报一周,天气预报15天查询,打开开发者选项,我们可以看到网页源代码:浏览器显示结果在python IDEA运行上述代码

运行结果如下:运行结果

从图中可以看到,网页源代码就被下载下来了,通过解析网页源代码我们就可以获得我们想要的天气数据。

由于还没学到解析库,下面我们修改代码,用正则表达式来提取温度并绘图。

# -*-coding:utf-8 -*-

'''@author 马秋平urllib的 基本用法'''

from urllib.request import urlopen #导入urlopen

import re #正则模块

import matplotlib.pyplot as plt #用来绘图

import numpy as np #用来作矩阵运算

pattern = re.compile(r'(\d)+℃')#构建正则匹配模式

url = 'http://www.weather.com.cn/weather/101110101.shtml' #链接

res = urlopen('http://www.weather.com.cn/weather/101110101.shtml') #传入url,其他均为可选参数

result = res.read().decode('utf-8')#打印网页源代码

temperature = re.findall(pattern,result)#用正则来匹配、获取温度

print(result) #打印网页源代码

print(temperature)#打印获取到的温度

data=[]#创建一个空列表用来存放温度

x=np.linspace(0,5,6) #x轴

for i in temperature:

data.append(int(i)) #类型转换,str--int

plt.scatter(x,data) #绘制散点图

plt.title('temperature') #设置标题

plt.xticks(x,['2','3','4','5','6','7'])#设置x轴标注,代表日期

plt.xlabel('date') #x轴标签

plt.grid(True) #显示网格线

plt.show()#显示绘图

运行结果如下

待更。。。。。。。。。

邮箱 :maqiuping@stu.xidian.edu.cn

欢迎交流,共同进步。

python3.8安装urllib库_urllib库的基本使用相关推荐

  1. python怎么安装requests库-Python3.6安装及引入Requests库的实现方法

    本博客可能没有那么规范,环境之类的配置.只是让你直接开始编程写python. 至于各种配置网络上有多种方法. 本文仅代表我的观点的一种方法. 电脑环境:win10 64位 第一步:下载python. ...

  2. python怎么安装requests库-Python3.6安装及引入Requests库

    本博客可能没有那么规范,环境之类的配置.只是让你直接开始编程写python. 至于各种配置网络上有多种方法. 本文仅代表我的观点的一种方法. 电脑环境:win10 64位 第一步:下载python. ...

  3. Python3.6安装及引入Requests库

    本博客可能没有那么规范,环境之类的配置.只是让你直接开始编程写python. 至于各种配置网络上有多种方法. 本文仅代表我的观点的一种方法. 电脑环境:win10 64位 第一步:下载python. ...

  4. python3 url解析 urllib.parse.urlparse 库简介

    urllib.parse - 将URL解析为组件 urllib.parse定义了一个标准接口,用于在组件中解析统一资源定位符(URL)字符串(寻址方案,网络位置,路径等),将组件组合回URL字符串,并 ...

  5. python用代码安装3.6_Python3.6安装及引入Requests库的实现方法

    本博客可能没有那么规范,环境之类的配置.只是让你直接开始编程写python. 至于各种配置网络上有多种方法. 本文仅代表我的观点的一种方法. 电脑环境:win10 64位 第一步:下载python. ...

  6. python urllib库安装_urllib库安装

    ubuntu怎样安装urllib库ubuntu怎样安装urllib库 先看一下ubuntu的软件源里是否有urllib, 如果没有就需要去 官网下载手动安装. 一般在软件的说明文档里有具体的安装方法, ...

  7. python3问题-安装第三方库

    安装第三方库 python 库安装方法及常用库 python库安装方法: pip install ***(库名称) python 库安装方法及常用库 python库安装方法:方法一:setpu.py1 ...

  8. python基础代码库-python3.4第三方库的安装?python基础代码库

    python怎么安装下载模块 python安装下载模块的:1.按盘上的[win r]快,打开运行窗口:2.输入cmd,点击定]:3.在打开的命令提示符中执行[pip install 模块名]命令即可. ...

  9. Ubuntu18.04系统中python3.7安装MultiNEAT库

    Ubuntu18.04系统中python3.7安装MultiNEAT库 前言 MultiNEAT介绍 安装问题 boost安装 MultiNEAT安装 安装过程遇到问题及解决方法 前言 MultiNE ...

最新文章

  1. 用Python分析了十年电影票房,原来我错过了这么多好电影!
  2. js_sl 延迟菜单
  3. 青蛙捉昆虫的html游戏,幼儿园小班体育游戏教案《小青蛙捉害虫》
  4. setfacl命令_一名合格的Linux运维人员应该掌握哪些命令?
  5. 机器学习基础 --- numpy的基本使用
  6. 简述ajax的优缺点
  7. sql 解析 java_将Java 8流解析为SQL
  8. Python3 基础学习笔记 C01【变量和简单数据类型】
  9. Mysql如何新建一个服务和移除所新建的服务
  10. RocketMQ开发指导之三——RocketMQ编程示例
  11. js 获取 最近七天 30天 昨天的方法 -- 转
  12. MCP2515独立控制器
  13. HCP数据的下载,以及头动文件和CSF文件的所在位置
  14. 【话题:工作生活】2020年工作总结--杭漂结束,沪漂开始。
  15. 快速实现M5311 NBIOT TCP通信
  16. IE文档模式的切换,Quirks模式
  17. 综述 | 目标检测中的多尺度检测方法
  18. android 自定义ImageView实现图片手势滑动,多点触摸放大缩小效果
  19. 透明视频 视频格式转换和音视频合并小工具
  20. Android中使用通知

热门文章

  1. Android应用开发系列——星座达人①
  2. Tomcat 系统架构与设计模式,第 1 部分
  3. Springboot+mysql 医疗产品销售系统计算机毕业设计源码01474
  4. System.ComponentModel.DataAnnotations.Schema 命名空间
  5. VGA、DVI、HDMI接口有哪些区别
  6. java 三点定位_iBeacon定位-三点定位实现
  7. 福利:送10本《增长黑客》+ 读书笔记
  8. 外媒:宝马戴姆勒洽谈联合研发电动汽车平台 可节省160亿美元成本
  9. 揭明星罕见“穿越”照 林青霞抱4岁徐若瑄
  10. ftp放行端口 linux,Linux中快速架设FTP服务和在 iptables放行FTP