python2与python3爬虫中get与post对比解析
时间:2021-09-21 08:35:52|栏目:Python代码|点击: 次
python2中的urllib2改为python3中的urllib.request
四种方式对比:
python2的get
# coding=utf-8
import urllib
import urllib2
word = urllib.urlencode({"wd":"百度"})
url = 'http://www.baidu.com/s' + '?' + word
request = urllib2.Request(url)
print urllib2.urlopen(request).read().decode('utf-8')
python3的get
import urllib.request
import urllib.parse
data = urllib.parse.urlencode({'wd':'百度'})
url = 'http://wwww.baidu.com/s?' + data
# url = 'http://www.baidu.com/s?wd=' + urllib.parse.quote('百度')
response = urllib.request.urlopen(url)
print (response.read().decode('utf-8'))
python2的post
# coding=utf-8
import urllib
import urllib2
formdata = {
'name':'百度'
}
data = urllib.urlencode(formdata)
request = urllib2.Request(url = "http://httpbin.org/post", data=data)
response = urllib2.urlopen(request)
print response.read()
python3的post
import urllib.parse
import urllib.request
data = bytes(urllib.parse.urlencode({'name':'百度'}),encoding='utf8')
response = urllib.request.urlopen('http://httpbin.org/post',data=data)
print(response.read().decode('utf-8'))
或
import urllib.parse
import urllib.request
request = urllib.request.Request('http://httpbin.org/post',data=bytes(urllib.parse.urlencode({'name':'百度'}),encoding='utf8))'))
response = urllib.request.urlopen(request)
print (response.read().decode('utf-8'))
上一篇:python进程类subprocess的一些操作方法例子
栏 目:Python代码
下一篇:Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍
本文标题:python2与python3爬虫中get与post对比解析
本文地址:http://www.codeinn.net/misctech/176409.html






