urllib和urllib3

一、urllib库

1.1 urllib库所包含的模块


1.2 urlopen方法

1.3 添加请求头

1.4 cookie操作

1.5 代理设置

1.6 response对象

1.7 urllib.parse模块


1.8 urllib.error模块

1.9 robotparse模块

二、urllib3库

2.1 简介

2.2 构造请求

2.3 response属性

2.4 json数据解析

2.5 大数据处理

2.6 代理

2.7 request参数




三、爬虫开发的基本流程

四、练习

import urllib3
import re
import os
# 构造请求
http = urllib3.PoolManager()
url_list = ["http://www.weimeitupian.com", "http://www.weimeitupian.com/page/2", "http://www.weimeitupian.com/page/3"]
for i in range(len(url_list)):res = http.request("GET", url_list[i])  # 循环发送请求res_str = res.data.decode()  # 将响应的数据解码print("正在下载第{}页的数据".format(i+1))# 匹配创建文件夹时所需要的文本并筛选出所需要的文本dir_name = re.findall(r'title="(.+?)"', res_str, re.S)[9:-10]# 匹配每个图片的url并筛选出所需要的urlimg_url = re.findall(r'<!--<img src="(.+?)"', res_str, re.S)[:45]# print(dir_name, len(dir_name))# print(img_url, len(img_url))for i in range(len(img_url)):try:res_img = http.request("GET", img_url[i])# res_img = http.request("GET", img_url[i], preload_content=False)  # 分段存储必须要带上preload_content=Falseexcept Exception as e:print("url出错!", e)res_img = http.request("GET", "http://www.weimeitupian.com"+img_url[i])# res_img = http.request("GET", "http://www.weimeitupian.com" + img_url[i], preload_content=False)# 拼接一个路径,用来创建文件夹dir_path = os.path.join(r"D:\Python学院学习环境\pachong\img", dir_name[i])# 判断该路径是否存在,不存在则创建if not os.path.exists(dir_path):os.mkdir(dir_path)# 拼接一个文件路径file_path = os.path.join(dir_path, "{}".format(img_url[i].split("/")[-1]))with open(file_path, "wb")as f:print("正在下载第{}条数据".format(i+1))f.write(res_img.data)# for chunk in res_img.stream(32):  # 分段写入,每次写入32个字节#     f.write(chunk)

效果图

urllib和urllib3相关推荐

  1. 爬虫学习笔记(四)—— urllib 与 urllib3

    urllib 是一个内置官方标准库,无需下载:它是python2中的 urllib 与 urllib2 的合并,urllib3 库是第三方标准库, 解决了线程安全,增加了连接池等功能,urllib与u ...

  2. 【python】urllib和urllib3,requests 简要概括---笔记

    '''urllib和urllib3,requestsurl:协议://存放资源的地址(域名)/具体的资源https://bj.lianjia.com/zufang/dghfjhsjdf648.html ...

  3. python urllib urllib2 urllib3 用法 区别

    目录 简介 1.打开远程文件 2.获取远程文件 一.urllib 1. urllib.request 1. 发起GET请求 2. 发起POST请求 3. 添加Headers 4. Request对象 ...

  4. python发起网络请求模块【requests、selenium、urllib、urllib3】

    python网络请求四大模块[requests.selenium.urllib.urllib3] 1.requests 该模块为python第三方库,需要使用pip安装 安装 pip install ...

  5. requests,urllib,urllib3爬虫库使用

    文章目录 Requests 简介 发送请求 url 添加请求参数 添加请求头 添加cookies 设置超时时间 设置代理 重定向 证书忽略验证 POST请求发送Json数据 POST请求发送Form表 ...

  6. Python网络请求urllib和urllib3详解

    1. 简介 urllib是Python中请求url连接的官方标准库,在Python2中主要为urllib和urllib2,在Python3中整合成了urllib. 而urllib3则是增加了连接池等功 ...

  7. Python urllib, urllib2, urllib3 以及 requests 的区别 (附个人一些看法)

    urllib python 标准 http 库, 无论是 python 2 还是 python 3 都有. urllib2 urllib2 是 只存在于 python 2 的一个 http 标准库. ...

  8. python urllib3 上传大文件_python urllib和urllib3包使用

    urllib包 urllib是一个包含几个模块来处理请求的库.分别是: urllib.request 发送http请求 urllib.error 处理请求过程中,出现的异常. urllib.parse ...

  9. Python标准库—urllib和urllib3

    一.urllib urllib是Python中请求url连接的官方标准库,在Python2中主要为urllib和urllib2,在Python3中整合成了urllib.urllib中一共有四个模块,分 ...

最新文章

  1. Verilog中的逻辑运算符与按位运算符的区分
  2. html求和按钮,使用模板标记在html模板中求和
  3. java aop性能检测_Spring AOP 性能监控器
  4. 【笔记】基于Faster R-CNN的除草机器人杂草识别算法
  5. Google分布式系统三驾马车: GFS,mapreduce,Bigtable
  6. 探索Julia(part13)--多分派
  7. Noise噪音halcon算子,持续更新
  8. 输入框回车多个文本_输入框测试用例,你真的了解输入框测试嘛!
  9. TCP协议的部分解析(1)
  10. 如何在C语言中巧用正则表达式
  11. Java单例模式——线程安全的懒汉模式
  12. SREng日志全分析(一)
  13. 网络管理员考试试题讲解
  14. 设置页眉为计算机网络,如何设置页眉从指定页开始
  15. 用TEXT函数解决日期用连接字符日期变成数字格式的问题
  16. 计算机考研用python_本科化工考研跨考计算机,学过高数和Python,难度有多大?...
  17. 企业邮箱密码怎么找回?
  18. Solidworks建模画一个盒子
  19. 设置CRT使用Console连接网络设备
  20. 达里奥:我阅人无数,没有一个成功人士天赋异禀 |【经纬低调分享】

热门文章

  1. python对Excel表格的指定两列数据画折线图
  2. html实现文本框透明度,CSS透明实现方法
  3. 巴比特 | 元宇宙每日必读:“元宇宙”炒热了XR赛道,高通试图“赢家通吃”,芯片巨头们的诸神之战开启...
  4. Redisson 3.7.x 版本报非法反射:WARNING: An illegal reflective access operation has occurred
  5. 解决笔记本电脑电源显示0%,电源连接,正在充电但不充电
  6. 程序员与英语:即时聊天中的英语缩写 lol / lmao / idk
  7. 你应该在开始API开发之前知道的事(上)(翻译)
  8. 通过商鞅变法企业可以学到的实施ERP软件精华
  9. 臀大肌(04):仰卧顶臀
  10. sqlserver注册表清理