python 爬虫 加强记忆

urllib :

使用urllib.urlencode() 进行url编码, 在requests中自带有url编码 

接受的参数是: 字典类型

urllib2: 

先构建请求: request = urllib2.Request()需要三个参数: url, data, headers

再反送请求,返回响应: response = urllib2.urlopen(request)

 
-------------------------------------------------------------------------------------------------------------
# python3中多了一个request,response = urllib.request.urlopen()
 get请求方式没有data
请求报头 headers = {"User-Agent" : "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11"}
 
# 构建请求对象,这个请求附带请求报头
request = urllib2.Request(url, headers = headers)
 
# 发送并得到请求响应
response = urllib2.urlopen(request)
 
html = response.read()  # 读取响应内容
 
有就修改没有就添加
request. add_header('Connection', 'keep-alive')
第一个参数是键名,第二参数是值
获取指定的请求报头的值,首字母大写,后面全部小写
request . get_header()
 
获取url
response.url
获取响应码
response.code
 
import random
random.choice(列表等可迭代对象)随机选择可迭代中的一个
 
urlencode(url编码:只能使用ASCII编码,所以要用urlencode编码成url字符串,接收的参数是字典类型) 是urllib中独有的,这就是urllib和urllib2混用的原因
url编码转化成字符串
data = urllib.unquote("a=%E4%B8%AD%E5%9B%BD%E5%BC%BA")
print data
a = 中国强
原文地址:https://www.cnblogs.com/ppansj/p/8010756.html