本篇将介绍urllib2的Get和Post方法,更多内容请参考:python学习指南 urllib2默认只支持HTTP/HTTPS的GET和POST方法 urllib.urlencode() urllib...和urllib2都是接受URL请求的相关参数,但是提供了不同的功能。...(这是urllib和urllib2经常一起使用的主要原因) 编码工作使用urllib的urlencode()函数,帮我们将key:value这样的键值对转换成"key=value"这样的字符串,解码工作可以使用...,于是我们可以尝试使用默认的Get方式来发送请求。...import urllib import urllib2 # 1. 导入Python SSL处理模块 import ssl # 2. 表示忽略未经核实的SSL证书认证 context = ssl.
在Python中有很多库可以用来模拟浏览器发送请求抓取网页,本文中介绍使用urllib2来实现获取网页数据。...urllib2是在Python2标准库中的,无需安装即可使用,在Python3中不能使用urllib2,在Python3中urllib2被改为了urllib.request,所以本文中的代码在Python3...这时候需要在url中拼接查询字符串,Python的urllib库提供了urlencode方法来将字典转换成查询字符串,而urllib2没有urlencode,所以可以通过urllib生成查询字符串来给urllib2...获取到的页面与我们在百度首页搜索python的页面相同。 ? 四、使用urllib2发送POST请求 上面的例子中,我们使用的都是GET方法,接下来我们使用POST方法。...使用urllib2发送请求时,我们并不需要声明使用的是GET请求还是POST请求,当我们给Request对象传入了data参数,urllib2就会自动以POST方式发送请求。
在Python中有很多库可以用来抓取网页,先学习urllib2。...urllib2模块直接导入就可以用,在python3中urllib2被改为urllib.request 开始爬虫需要准备的一些工具 (1)下载Fiddeler抓包工具,百度直接下载安装就可以(抓包) (...) #get_header()获取一个已有的HTTP报头的值,注意只能第一个字母大写,后面的要小写 print request.get_header('User-agent') urllib和urllib2...的主要区别 urllib和urllib2都是接受URL请求的相关模块,但是提供了不同的功能,最显著的区别如下: (1)urllib仅可以接受URL,不能创建,设置headers的request类实例;...(2)但是urllib提供urlencode()方法用来GET查询字符串的产生,而urllib2则没有(这是urllib和urllib2经常一起使用的主要原因) (3)编码工作使用urllib的urlencode
# -*- coding: utf-8 -*- import urllib2 # http发送报文 def httpsend(url, bw): req = urllib2.Request(...url, bw) res_data = urllib2.urlopen(req) res = res_data.read() print(res) # 打出响应信息 if...__name__ == "__main__": url = "http://20.0.1.157:30043/OMP" bw = '请求报文' httpsend(url, bw)
urllib2的异常错误处理 在我们用urlopen或opener.open方法发出一个请求时,如果urlopen或opener.open不能处理这个response,就产生错误。...#urllib2_urlerror.py import urllib2 request = urllib2.Request("http://www.sdfsdfsf.com") try: urllib2..._urllib2_httperror.py import urllib2 request = urllib2.Request("http://blog.baidu.com/itcast") try...import urllib2 request = urllib2.Request("http://blog.baidu.com/itcast") try: urllib2.urlopen...2xx:成功 200 OK 请求成功(其后是对GET和POST请求的应答文档) 201 Created 请求被创建完成,同时新的资源被创建。
近来发现自己博客上python技术点的文章有点少,为了防止自己总是遗忘,还是写出来的好。...开始了 一般情况下用python的童鞋是不可避免的要写一些爬虫程序的,因此对python中urllib和urllib2都比较熟悉。...下面的函数通过urllib2来模拟浏览器访问链接爬取内容: def get_url_content(url): i_headers = {"User-Agent": "Mozilla/5.0 (...,那么就需要用到urllib2中的代理设置了,如下: def get_content_by_proxy(url, proxy): opener = urllib2.build_opener(urllib2....Request(url, headers=i_headers) content = urllib2.urlopen(req).read() return content 要使用这个函数
) 2.3 代理 urllib2会自动检测代理设置,默认使用环境变量http_proxy 来设置 HTTP Proxy。...opener) 这里要注意的一个细节,使用 urllib2.install_opener() 会设置 urllib2 的全局 opener。...10) # 另一种方式 在新的 Python 2.6 版本中,超时可以通过 urllib2.urlopen() 的 timeout 参数直接设置。... urllib2 只支持 HTTP 的 GET 和 POST 方法,如果要使用 HTTP PUT 和 DELETE,只能使用比较低层的 httplib 库。...Hack 的方式,但实际使用起来也没什么问题。
类似于使用程序模拟IE浏览器的功能,把URL作为HTTP请求的内容发送到服务器端, 然后读取服务器端的响应资源。 在Python中,我们使用urllib2这个组件来抓取网页。...我们新建一个文件urllib2_test02.py来感受一下: 可以看到输出的内容和test01是一样的。 urllib2使用相同的接口处理所有的URL头。...编码工作使用urllib的函数而非urllib2。 我们新建一个文件urllib2_test03.py来感受一下: 如果没有传送data参数,urllib2使用GET方式的请求。...GET和POST请求的不同之处是POST请求通常有"副作用", 它们会由于某种途径改变系统状态(例如提交成堆垃圾到你的门口)。 Data同样可以通过在Get请求的URL本身上面编码来传送。...默认的urllib2把自己作为“Python-urllib/x.y”(x和y是Python主版本和次版本号,例如Python-urllib/2.7), 这个身份可能会让站点迷惑,或者干脆不工作。
本篇我们将开始学习如何进行网页抓取,更多内容请参考:python学习指南 urllib2库的基本使用 所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。...在Python中有很多库可以用来抓取网页,我们先学习urllib2。...urllib2是Python2.x自带的模块(不需要下载,导入即可使用) urllib2官网文档:https://docs.python.org/2/library/urllib2.html urllib2...#导入urllib2库 import urllib2 #向指定的url发送请求,并返回服务器的类文件对象 response = urllib2.urlopen("http://www.baidu.com...urllib2默认的User-Agent头为:Python-urllib/x.y(x和y是Python主版本和次版本号,例如Python-urllib/2.7) #-*- coding:utf-8 -*
糖豆贴心提醒,本文阅读时间6分钟 前面说到了urllib2的简单入门,下面整理了一部分urllib2的使用细节。...2.Timeout 设置 在老版 Python 中(Python2.6前),urllib2 的 API 并没有暴露 Timeout 的设置,要设置 Timeout 值,只能更改 Socket 的全局 Timeout...如果需要得到某个 Cookie 项的值,可以这么做: 运行之后就会输出访问百度的Cookie值: 6.使用 HTTP 的 PUT 和 DELETE 方法 urllib2 只支持 HTTP 的 GET...和 POST 方法,如果要使用 HTTP PUT 和 DELETE ,只能使用比较低层的 httplib 库。...虽然如此,我们还是能通过下面的方式,使 urllib2 能够发出 PUT 或DELETE 的请求: 7.得到 HTTP 的返回码 对于 200 OK 来说,只要使用 urlopen 返回的 response
Python3 安装urllib2包之小坑 Python3.6.6或者说python3.x找不到urllib2语法问题修改之后,会报一个没有安装urllib2的包的错误。...但Pyhton2中的urllib2工具包,在Python3中分拆成了urllib.request和urllib.error两个包。就导致找不到包,同时也没办法安装。...所以需要install urllib.request和install urllib.error 两个包,然后将builtwith包中的import urllib2修改为import urllib.request...和import urllib.error。...案例 python2中 import urllib2 req =urllib2.Request('xxxx') data =urllib2.urlopen(req).read() print(data
= opener.open(request) # 获取服务器响应内容 print response.read() 这种方式发送请求得到的结果,和使用urllib2.urlopen()发送HTTP/HTTPS...urllib2中通过ProxyHandler来设置使用代理服务器,下面代码说明如何使用自定义opener来使用代理: #urllib2_proxy1.py import urllib2 # 构建了两个代理....HTTPError: HTTP Error 401: Unauthorized 如果我们有客户端的用户名和密码,我们可以通过下面的方法去访问爬取: import urllib import urllib2...cookielib库 和 HTTPCookieProcessor处理器 在Python处理Cookie,一般是通过cookielib模块和 urllib2模块的HTTPCookieProcessor处理器类一起使用...//www.baidu.com") 利用cookielib和post登录人人网 import urllib import urllib2 import cookielib # 1.
网页下载器:将互联网上URL对应的网页下载到本地的工具,是爬虫的核心组件 urllib2下载网页的三种方法 对应实例代码如下: #coding:utf8 import urllib2...url = 'http://www.baidu.com' print '第一种方法 --> 直接请求 ' response1 = urllib2.urlopen(url) #获取状态码...发送请求获取结果 response2 = urllib2.urlopen(request) print response2.getcode() print len(response2.read())...第二种方法: 200 4305 #coding:utf8 import urllib import urllib2 import cookielib url = 'http://www.baidu.com...urllib2.HTTPCookieProcessor(cj)) # 给urllib2安装opener urllib2.install_opener(opener) # 使用带有cookie的urllib2
我们平常浏览各个网站时,不免有时候就需要填写一些信息,比如注册时,登录时,这些信息一般都是通过GET请求或者POST(敏感信息一般使用POST,数据隐藏,相对来说更安全)请求提交到后台,经过后台的一系列处理...请求的参数都是拼装到URL后面进行传输的,所以这地方不能直接添加参数,需要组装好一个带参数的URI传递到HttpGet的构造方法中,构造一个带参数的GET请求。...构造带参数的URI使用URIBuilder类。 上面添加请求参数的方法有两种,建议后者,后者操作更加灵活。...POST请求携带请求参数和请求头: @Test public void postParams() { // 获取连接客户端工具 CloseableHttpClient httpClient...response.getAllHeaders())); } catch (ClientProtocolException e) { System.err.println("Http协议出现问题
本文将介绍handler处理器和自定义opener,更多内容请参考:python学习指南 opener和handleer 我们之前一直使用的是urllib2.urlopen(url)这种形式来打开网页...,和使用urllib2.urlopen()发送HTTP/HTTPS请求得到的结果是一样的。...urllib2中通过ProxyHandler来设置使用代理服务器,下面代码说明如何使用自定义opener来使用代理: #-*- coding:utf-8 -*- #urllib2_proxyhandler.py...如果我们有客户端的用户名和密码,我们可以通过下面的方法去访问爬取: # -*- coding:utf-8 -*- import urllib import urllib2 #用户名 user = "...cookielib库 和 HTTPCookieProcessor处理器 在Python处理Cookie,一般是通过cookielib模块和urllib2模块的HTTPCookieProcessor处理器一起使用
要解决这个问题,有两种方法可以尝试:方法一:使用urllib.request模块替代urllib2由于urllib2在Python 3中已被移除,可以使用urllib.request...下面详细介绍urllib2模块的一些重要功能和用法:1. 发送GET请求使用urllib2模块发送GET请求,可以通过urlopen函数来实现。...发送POST请求除了发送GET请求,urllib2还可以发送POST请求。需要使用Request类来构建请求对象,并通过urlopen函数发送请求。...以上是对urllib2库的一些简单介绍和示例。通过使用urllib2库,我们可以方便地处理HTTP请求和响应,获取数据并进行相应的处理。...但需要注意的是,由于在Python 3中被移除,所以在Python 3中应该使用urllib.request和urllib.error模块来代替urllib2。
转载请标明出处: http://blog.csdn.net/lxk_1993/article/details/50897613 本文出自:【lxk_1993的博客】; xUtils 的 post和get...请求 使用记录.最后有规范的代码。...方式: get方式比较简单,只需要把下面的url改成你的请求地址,把Object 改成请求返回的Json数据实体类就行了。...RequestParams params = new RequestParams(url);//url是get的请求地址 Callback.Cancelable cancelable = x.http....object和url和上面一样。
在PHP中想要构造类似GET和POST请求,在一些APP或者等后端功能开发中是有这种需求。 在PHP语言当中有file_get_content ()函数和curl的支持。...1、GET请求实现 直接写代码了,就不再叙述,有需要的朋友直接Ctrl+C+Ctrl+V即可 <?...php function httpGET($target_url, $get_data = array()){ $result = @file_get_content($target_url....http_build_query($get_data)); return $result; } /* * 方法2 */ function httpGET2($target_url, $get_data...> 2、POST 请求实现 POST请求没法儿使用file_get_content ()函数来实现,所以只有使用curl方法来实现 <?
相信大家都知道,用Python来做接口测试,使用的方法很多,如POST、GET等方法请求API参数。...下面就 豆瓣图书的用户收藏信息api来学习Python3+urllib这两个库来实现POST和GET下的api请求实例,附上代码注释: 一、接口相关信息。如下: ?...(apicontent)#打印读取到的内容 2.用get方法请求api #coding:utf-8 #auther:xiaozhong #Data:2017-11-12 15:30 """"用get方法请求...+ data """"跟post不同的只有这一句,使用?...三、运行结果分析 从下图可以看出,POST和GET的请求结果是一致的 ?
接下来讲解Python中实现HTTP请求的三种方式:urllib2/urllib、httplib/urllib以及Requests。...1. urllib2/urllib实现 urllib2和urllib是Python中的两个内置模块,要实现HTTP功能,实现方式是以urllib2为主,urllib为辅。...问题出在请求中的头信息,服务器会检验请求头,来判断是否是来自浏览器的访问,这也是反爬虫的常用手段。...3.3 请求头headers处理 Requests对headers的处理和urllib2非常相似,在Requests的get函数中添加headers参数即可。...Python开发中遇到的问题,如果没有第一步访问登录的页面,而是直接向登录链接发送Post请求,系统会把你当做非法用户,因为访问登录界面时会分配一个Cookie,需要将这个Cookie在发送Post请求时带上