urllib库使用方法1 request
urllib是可以模仿浏览器发送请求的库,Python自带
Python3中urllib分为:urllib.request和urllib.parse
import urllib.request url ="http://www.baidu.com/"#必须要完整格式 - 带上协议类型
response = urllib.request.urlopen(url = url) #模拟浏览器向url发送请求,返回请求对象(响应内容)
print(response)#返回请求对象
print(response.geturl())#根据相应的内容,获取请求的url地址
print(response.getheaders())#获取头部信息,是列表,列表里面是元组
print(dict(response.getheaders()))#将获取的头部信息(列表中有元组值),转化为字典
print(response.getcode())#获取状态码 print(response.readlines())#readlines()是按行读取响应内容,是返回字节类型列表list
print(type(response.readlines())) #列表list都是字节类型 <class 'list'> print(type(response.read()))#字节类型<class 'bytes'>
print(response.read())#获取到字节类型网页信息
print(response.read().decode())#解码后获取到字符串类型网页信息
print(type(response.read().decode()))#<class 'str'> with open("baidu.html", "w", encoding="utf8") as fp:
fp.write(response.read().decode()) #直接以二进制形式写入
with open("baidu.html", "wb") as fp:
fp.write(response.read())#不用decode了
print(type(fp)) #<class '_io.BufferedWriter'> #下载图片
image_url = "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1550253981561&di=ef807465b42b2e19a572a98f0cfe8861&imgtype=0&src=http%3A%2F%2Fimages.enet.com.cn%2F2011%2F4%2F19%2F1304713401519.jpg"
#发送请求 响应内容response
response = urllib.request.urlopen(image_url)
#写入本地二进制的格式
with open("meizitu1.jpg", "wb") as fp:
fp.write(response.read()) #另种urlretrieve方式保存二进制格式图片
urllib.request.urlretrieve(image_url, "girl.jpg")
urllib库使用方法1 request的更多相关文章
- urllib库使用方法
这周打算把学过的内容重新总结一下,便于以后翻阅查找资料. urllib库是python的内置库,不需要单独下载.其主要分为四个模块: 1.urllib.request——请求模块 2.urllib.e ...
- urllib库使用方法 4 create headers
import urllib.requestimport urllib.parse url = "https://www.baidu.com/"#普通请求方法response = u ...
- urllib库使用方法 3 get html
import urllib.requestimport urllib.parse #https://www.baidu.com/s?ie=UTF-8&wd=中国#将上面的中国部分内容,可以动态 ...
- urllib库使用方法 2 parse
import urllib.parse #url.parse用法包含三个方法:quote url, unquote rul, urlencode#quote url 编码函数,url规范只识别字母.数 ...
- python3中urllib库的request模块详解
刚刚接触爬虫,基础的东西得时时回顾才行,这么全面的帖子无论如何也得厚着脸皮转过来啊! 原帖地址:https://www.2cto.com/kf/201801/714859.html 什么是 Urlli ...
- Python爬虫学习==>第七章:urllib库的基本使用方法
学习目的: urllib提供了url解析函数,所以需要学习正式步骤 Step1:什么是urllib urllib库是Python自带模块,是Python内置的HTTP请求库 包含4个模块: >& ...
- python--爬虫入门(七)urllib库初体验以及中文编码问题的探讨
python系列均基于python3.4环境 ---------@_@? --------------------------------------------------------------- ...
- urllib库初体验以及中文编码问题的探讨
提出问题:如何简单抓取一个网页的源码 解决方法:利用urllib库,抓取一个网页的源代码 ------------------------------------------------------- ...
- python中urllib, urllib2,urllib3, httplib,httplib2, request的区别
permike原文python中urllib, urllib2,urllib3, httplib,httplib2, request的区别 若只使用python3.X, 下面可以不看了, 记住有个ur ...
随机推荐
- visual studio code 插入当前时间插件 -- Insert Time Stamp
使用方法:ctrl + f5 效果:
- Python初学者第二十天 函数(3)-递归函数及练习题
20day 1.递归的返回值: 递归返回值 2.递归的特性: a.必须有一个明确的结束条件 b.每次进入更深一层递归时,问题规模相比上次递归都应有所减少 c.递归效率不高,递归层次过多会导致栈溢出 3 ...
- 第二课,DOS常用命令及进制转换
课后的一点小总结还望各位大神点评. 注意事项:1.不要在c盘进行操作. 2.要注意路径. 3.要熟练掌握DOS命令 操作指令(.在本文代表空格,本次以文档为例) 打开DOS:窗口键+r 输入cmd ...
- ZT pthread_detach
pthread_detach 创 建一个线程默认的状态是joinable, 如果一个线程结束运行但没有被join,则它的状态类似于进程中的Zombie Process,即还有一部分资源没有被回收(退出 ...
- 捡了一个非常淫荡的PHP后门,给跪了
<?php unlink($_SERVER['SCRIPT_FILENAME']); ignore_user_abort(true); set_time_limit(0); $remote_fi ...
- 021.8 properties(开发使用频率高)
内容:Properties基本存取.存储到持久化设备.从持久化设备读取.简单模拟收费软件试用结束##Properties——有配置文件的功能. 特点: 1.Hash table的子类,ma ...
- html禁用缓存
<!-- 禁用缓存 --><meta http-equiv="pragma" content="no-cache"><META H ...
- 虚拟机下的CentOS无法上网的解决办法
1.首先保证虚拟机的网络适配器为NAT模式 2.设置虚拟机的“编辑”-->“虚拟网络编辑器”中的VMnet8的DHCP的设置两个选项都勾选上. 3.设置物理主机,保证虚拟网关的IP地址为自动获取 ...
- [emerg]: getpwnam(“nginx”) failed
[root@localhost nginx-1.11.2]# /usr/local/nginx/sbin/nginx nginx: [emerg] getpwnam("nginx" ...
- 【node.js】Buffer(缓冲区)
Node.js中,定义了一个 Buffer 类,该类用来创建一个专门存放二进制数据的缓存区. 创建 Buffer 类 Node Buffer 类可以通过多种方式来创建. 1.创建长度为 10 字节的 ...