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的更多相关文章

  1. urllib库使用方法

    这周打算把学过的内容重新总结一下,便于以后翻阅查找资料. urllib库是python的内置库,不需要单独下载.其主要分为四个模块: 1.urllib.request——请求模块 2.urllib.e ...

  2. urllib库使用方法 4 create headers

    import urllib.requestimport urllib.parse url = "https://www.baidu.com/"#普通请求方法response = u ...

  3. urllib库使用方法 3 get html

    import urllib.requestimport urllib.parse #https://www.baidu.com/s?ie=UTF-8&wd=中国#将上面的中国部分内容,可以动态 ...

  4. urllib库使用方法 2 parse

    import urllib.parse #url.parse用法包含三个方法:quote url, unquote rul, urlencode#quote url 编码函数,url规范只识别字母.数 ...

  5. python3中urllib库的request模块详解

    刚刚接触爬虫,基础的东西得时时回顾才行,这么全面的帖子无论如何也得厚着脸皮转过来啊! 原帖地址:https://www.2cto.com/kf/201801/714859.html 什么是 Urlli ...

  6. Python爬虫学习==>第七章:urllib库的基本使用方法

    学习目的: urllib提供了url解析函数,所以需要学习正式步骤 Step1:什么是urllib urllib库是Python自带模块,是Python内置的HTTP请求库 包含4个模块: >& ...

  7. python--爬虫入门(七)urllib库初体验以及中文编码问题的探讨

    python系列均基于python3.4环境 ---------@_@? --------------------------------------------------------------- ...

  8. urllib库初体验以及中文编码问题的探讨

    提出问题:如何简单抓取一个网页的源码 解决方法:利用urllib库,抓取一个网页的源代码 ------------------------------------------------------- ...

  9. python中urllib, urllib2,urllib3, httplib,httplib2, request的区别

    permike原文python中urllib, urllib2,urllib3, httplib,httplib2, request的区别 若只使用python3.X, 下面可以不看了, 记住有个ur ...

随机推荐

  1. es6常见特性

    Parameters(参数) in ES6 Template Literals (模板文本)in ES6 Multi-line Strings (多行字符串)in ES6 Destructuring  ...

  2. leetcode Ch5-Linked List

    一. 1. Remove Duplicates from Sorted List II class Solution { public: ListNode* deleteDuplicates(List ...

  3. aspnetcore 认证相关类简要说明三

    今天我们再来了解一个很重要的接口IAuthenticationService的实现类AuthenticationService: public class AuthenticationService ...

  4. ORACLE 11GR2 安装时配置了域,后期删除

    因为用了一个安全平台.此平台居然不支持oracle中的服务吗有"."而这个点就是因为当时安装oracle录入了域.原来以为是修改服务名.百多了很多,最后发现就是删除域即可 感谢此文 ...

  5. [翻译] SVProgressHUD

    SVProgressHUD https://github.com/TransitApp/SVProgressHUD SVProgressHUD is a clean and easy-to-use H ...

  6. [EffectiveC++]item06:若不想使用编译器自动生成的函数,就该明确决绝

  7. .NET正则表达式Regex

    一.IsMatch(Input,patter[,options]) 否则匹配 如果表达式在字符串中匹配,返回布尔值. if (Regex.IsMatch("a.b.c.d", @& ...

  8. JS hashMap实例详解

    链接:http://www.jb51.net/article/85111.htm JS hashMap实例详解 作者:囧侠 字体:[增加 减小] 类型:转载 时间:2016-05-26我要评论 这篇文 ...

  9. 初探BeEF

    1.什么是BeEF? 就是 The Browser Exploitation Framework 的缩写,意在通过一些手段,控制对方的浏览器. 里面集成了很多模块,能够获取很多东西,有cookie,浏 ...

  10. Django的时区设置问题

    1.Django的时区问题 django默认的时区是UTC,平时是没有什么影响的,但是在需要将时间戳转换成本时区的时间或者是获取当前的本地的localtime的时候就出现了问题.之前程序在测试时是运行 ...