【Python】urlopen小结
0X00 简介
urlopen是urllib的的一个方法,它属于类文件对象,具有文件对象的方法,如read()等,同时也具有自身的一些方法:
1、info() 返回响应包的头信息
2、info().getheader() 返回头信息中指定内容,如Content-Type值等
2、getcode() 返回响应码,如200表示可以访问,404表示无法访问
3、geturl 返回请求的url地址
0X01 作用
1、获取服务器返回的header内容
#coding:utf-8
import urllib
header=urllib.urlopen('http://www.baidu.com').info()
print header
print header.info().getheader('Content-Type')
2、获取服务器返回的body内容
#coding:utf-8 import urllib
import urllib2 url='http://127.0.0.1/sqli-labs-master/Less-15/' req=urllib2.Request(url) #创建请求对象 values={'uname':'admin','passwd':'admin'} #请求的post数据 data=urllib.urlencode(values) #对post数据进行url编码 resp=urllib2.urlopen(req,data).read() #读取响应对象内容,将其赋值给resp with open('data.txt','a') as fw:
for line in resp:
fw.write(line) #将resp内容写入data.txt
3、下载图片到本地
#coding:utf-8
import urllib
pic=urllib.urlopen('http://www.xdowns.com/image/logo.png').read()
with open('1.jpg','wb') as fw: #以二进制格式写图片文件
fw.write(pic)
【Python】urlopen小结的更多相关文章
- Python 学习小结
python 学习小结 python 简明教程 1.python 文件 #!/etc/bin/python #coding=utf-8 2.main()函数 if __name__ == '__mai ...
- Python字典小结
字典(dict)结构是Python中常用的数据结构,笔者结合自己的实际使用经验,对字典方面的相关知识做个小结,希望能对读者一些启发~ 创建字典 常见的字典创建方法就是先建立一个空字典,然后逐一 ...
- python urlopen
Python urllib 库提供了一个从指定的 URL 地址获取网页数据,然后对其进行分析处理,获取想要的数据. urlopen返回 一个类文件对象(fd),它提供了如下方法:read() , re ...
- Python工程化小结
对如何写一个工业级的Python项目作一个top-down小结. 一.项目结构 顶层结构: 文件夹: model可以是项目中的自定义类: utils是一些工程工具,比如log,tracker log存 ...
- 第11.27节 Python正则小结:正则静,静则明,明则虚,虚则无为而无不为也
正则表达式的章节到此就结束了,老猿现在觉得对我们这些身具程序猿基因特色的人来说,正则表达式应该是蛮可口的开胃小菜. 在写标题时,本来想写"正则表达式小结",后来想了想,百度了一下, ...
- python学习小结8:I/O
文件I/O是Python中最重要的技术之一,在Python中对文件进行I/O操作是非常简单的. 打印到屏幕上 >>> print "python is really a g ...
- python学习小结7:变量类型
变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据类型,这些变量可以存储整 ...
- python学习小结6:模块
模块:在Python中有一个概念叫做模块(module),简单地说,模块就是一个保存了Python代码的文件. 模块能定义函数,类和变量,模块里也能包含可执行的代码. ...
- python学习小结5:封装、继承、多态
面向对象程序设计中的类有三大特性: 继承,封装,多态 继承:以普通的类为基础建立专门的类对象 封装:对外部世界隐藏对象的工作细节 多态:可对不同类的对象使用同样的操作 在Python中类的继承定义基本 ...
随机推荐
- 627D Preorder Test
传送门 题目大意 给出一棵无根树,每个节点有一个权值,现在要让dfs序的前k个结点的最小值最大,求出这个值.分析 首先可以对这个值v进行二分然后01分数规划现在问题转化为求出一个dfs序,使得dfs序 ...
- oracle获取表和列的备注
using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Runti ...
- Shiro——认证
引入shiro依赖 <!-- shiro --> <dependency> <!-- shiro-core Required in all environments. - ...
- 智能IC卡中的文件系统
1.文件系统是COS的重要模块之一,它负责组织.管理.维护IC卡内存储的所有数据. 文件系统的设计和实现既是COS系统中最灵活.最有个性的部分,也是对系统整体结构影响最大的模块之一. 2.在IC卡内, ...
- Eclipse工具
1 ArrayList的常见方法 * a: add(参数) 向集合中添加元素 * b: get(int index) 取出集合中的元素,get方法的参数,写入索引 * c: size() 返回集合的长 ...
- App测试从入门到精通之更新测试
我们都知道,app在使用一段时间,都会有更新,而且更新会不止一次.在实际测试中,关于更新的测试场景也是我们需要重点关注的,接下来我们就看一下关于App的更新测试有哪些测试点我们需要注意: APP更新测 ...
- What’s the Difference Between a Value Provider and Model Binder?
ASP.NET MVC 3 introduced the ability to bind an incoming JSON request to an action method parameter, ...
- Load-time relocation of shared libraries
E原文地址:http://eli.thegreenplace.net/2011/08/25/load-time-relocation-of-shared-libraries/ This article ...
- Daubechies Wavelet
The Daubechies wavelets, based on the work of Ingrid Daubechies, are a family of orthogonal wavelets ...
- Android AIDL--进程间通信
一 AIDL 是什么 AIDL(Android 接口定义语言) 是 Android 提供的一种进程间通信 (IPC) 机制. 我们可以利用它定义客户端与服务使用进程间通信 (IPC) 进行相互通信时都 ...