urllib2模块使用

Posted chenjie2018

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了urllib2模块使用相关的知识,希望对你有一定的参考价值。

  urllib2库是python中自带的用来进行网络抓取的库,在python3中 urllib2库被改为urllib.request

  urllib2中常用方法:

  1.urlopen :向指定服务器发送请求,并返回服务器相应的类文件对象

  2.request:当需要增加http报头等较复杂的操作的时候,创建request实例作为urlopen的参数,url地址作为request的参数,如下

    

# urllib2_request.py

import urllib2

# url 作为Request()方法的参数,构造并返回一个Request对象
request = urllib2.Request("http://www.baidu.com")

# Request对象作为urlopen()方法的参数,发送给服务器并接收响应
response = urllib2.urlopen(request)

html = response.read()

print html

  

新建Request实例,除了必须要有 url 参数之外,还可以设置另外两个参数:

  1. data(默认空):是伴随 url 提交的数据(比如要post的数据),同时 HTTP 请求将从 "GET"方式 改为 "POST"方式。

  2. headers(默认空):是一个字典,包含了需要发送的HTTP报头的键值对。

在 HTTP Request 中加入特定的 Header,来构造一个完整的HTTP请求消息。

 

 

在大部分时候urllib会与urllib2共同使用,主要是为了使用urllib.encode()方法,同时通过urllib2的方法伪装user-agent字段,从而完成爬虫的第一层伪装。

以上是关于urllib2模块使用的主要内容,如果未能解决你的问题,请参考以下文章

导入错误:没有模块名称 urllib2

1.4. urllib2模块的基本使用

ImportError:没有名为“urllib2”Python 3的模块[重复]

爬虫学习——网页下载器和urllib2模块

urllib2模块使用

python urllib2模块 在哪里下载?