千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:成都千锋IT培训  >  技术干货  >  pythonurllib怎么用

pythonurllib怎么用

来源:千锋教育
发布人:xqq
时间: 2023-11-10 08:15:32

python3中,urllib和urllib2进行了合并,现在只有一个urllib模块,urllib和urllib2的中的内容整合进了urllib.request,urlparse整合进了urllib.parse。

urlparse将urlstr解析成各个组件

importurllib.request

importurllib.parse

url="http://www.baidu.com"

parsed=urllib.parse.urlparse(url)

print(parsed)

#输出:ParseResult(scheme='http',netloc='www.baidu.com',path='',params='',query='',fragment='')

urljoin(baseurl,newurl,allowFrag=None)将url的根域名和新url拼合成一个完整的url

importurllib.parse

url="http://www.baidu.com"

new_path=urllib.parse.urljoin(url,"index.html")

print(new_path)

#输出:http://www.baidu.com/index.html

urlopen(url,data,timeout)打开一个url的方法,返回一个文件对象,然后可以进行类似文件对象的操作

importurllib.request

req=urllib.request.urlopen('http://www.baidu.com')

print(req.read())

read(),readline(),readlines(),fileno(),close()

info():返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息。

getcode():返回Http状态码,如果是http请求,200表示请求成功完成;404表示网址未找到。

geturl():返回请求的url。

urlretrieve(url,filename,reporthook,data)下载url定位到的html文件,不写路径filename则会被存为临时文件可以用urllib.urlcleanup()来清理缓存

file_name=urllib.request.urlretrieve('http://www.baidu.com','%s/baidu.html'%BASE_DIR)

urlencode()将dict中的键值对以连接符&划分

importurllib.parse

dic={'name':'melon','age':18}

data=urllib.parse.urlencode(dic)

print(data)#age=18&name=melon

GET请求

GET请求和我们平常get访问方式一样,直接把参数写到网址上面就好了

importurllib.request

importurllib.parse

dic={'name':'melon','age':18}

data=urllib.parse.urlencode(dic)

req=urllib.request.urlopen('http://127.0.0.1:8000/index?%s'%data)

content=req.read()

POST请求

importurllib.request

importurllib.parse

importjson

dic={'name':'melon','age':18}

data=urllib.parse.urlencode(dic)

req=urllib.request.Request('http://127.0.0.1:8000/index',data.encode())

opener=urllib.request.urlopen(req)

content=json.loads(opener.read().decode())

当你urllib.urlopen一个https的时候会验证一次SSL证书,当目标使用的是自签名的证书时就会出现一个URLError,如果是这样可以在开头加上

importssl

ssl._create_default_https_context=ssl._create_unverified_context

以上内容为大家介绍了python培训之urllib怎么用,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

python delattr函数如何使用?

2023-11-10

python time.strptime的格式化

2023-11-10

pythonGIL在Python多线程的应用

2023-11-10

最新文章NEW

python中pdb模块怎么用?

2023-11-10

Python如何截图保存?

2023-11-10

python​中缺少module怎么办?

2023-11-10

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>