码迷,mamicode.com
首页 > 编程语言 > 详细

python 爬虫 加强记忆

时间:2017-12-09 12:04:03      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:可迭代对象   use   int   web   code   ike   随机   lib   对象   

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 = 中国强

python 爬虫 加强记忆

标签:可迭代对象   use   int   web   code   ike   随机   lib   对象   

原文地址:http://www.cnblogs.com/ppansj/p/8010756.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!