爬虫基础框架 之urllib(一) --- urllib基础
程序员文章站
2022-06-12 18:26:15
Mac本爬虫 首先需导入一个模块 urllib导入配置 urllib 是python提供的一个用于发起和处理http请求和响应的框架。后期的一些框架,比如: requests、 scrapy等都是基于它 从urllib中导入请求模块 编写 url urllib基本方法 1. urlopen( ) 方 ......
mac本爬虫
- 首先需导入一个模块
1 import ssl 2 ssl._create_default_https_context = ssl._create_unverified_context
urllib导入配置
urllib 是python提供的一个用于发起和处理http请求和响应的框架。后期的一些框架,比如: requests、 scrapy等都是基于它
- 从urllib中导入请求模块
1 from urllib import request
- 编写 url
1 url = "http://www.baidu.com/"
urllib基本方法
1. urlopen( ) 方法
用于打开一个远程的url连接,并且向这个连接发出请求,获取响应结果。返回的结果是一个http响应对象,这个响应对象中记录了本次http访问的响应头和响应体
- 获取响应
1 response = request.urlopen(url=url) 2 print(response)
3 结果 :<http.client.httpresponse object at 0x10be801d0>
- 获取打印响应头
1 print(response.headers)
- 获取打印响应
1 print(response.url) #打印url 2 print(response.status) #打印状态码
- 读取响应体
1 res = response.read() # 读取的是二进制 2 print(res) # 读取到的响应体是一个二进制字符串 3 print(res.decode("utf-8")) # 对响应体进行解码
- 读取一行
1 res = response.readline() # 读取一行 2 res1 = response.readline() # 读取下一行 3 res2 = response.readlines() # 读取多行。得到一个列表 每个元素是一行 4 print(res) # 打印
2. urlretrieve(url =”xxx“, filename = ”xxx“) 方法
打开url这个连接 并且发起请求,获得响应并把响应结果保存到filename中
- 获取 保存到文件中
1 res3 = request.urlretrieve(url=url,filename="./baidu.html") 2 print(res3) # 获取url 保存到baidu.html中 并打印
3. urlencode( ) 方法
对url进行编码,因为urllib这个框架中的url中不能出现汉字,只能出现ascii码字符
- 导入parse框架,是urllib中处理url的工具
1 from urllib import parse
- 0.设置url
1 url = "https://www.baidu.com/s?"
- 1.把参数写成字典的形式
1 dic= {"ie":"utf-8","wd":"奔驰"}
- 2.用parse的urlencode方法编码
1 parames = parse.urlencode(dic)
- 3.将编码以后的参数拼接到url中
1 url += parames 2 request.urlopen(url=url)
下一篇: PHP 基本语法格式