python培训之urllib怎么用

发布时间:2022-11-18 09:38:19 人气:123 作者:多测师

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

  urlparse  将urlstr解析成各个组件

  import urllib.request

  import urllib.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

  import urllib.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的方法,返回一个文件对象,然后可以进行类似文件对象的操作

  import urllib.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表示网址未找到。

python培训之urllib怎么用

  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中的键值对以连接符&划分

  import urllib.parse

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

  data = urllib.parse.urlencode(dic)

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

  GET请求

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

  import urllib.request

  import urllib.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请求

  import urllib.request

  import urllib.parse

  import json

  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,如果是这样可以在开头加上

  import ssl

  ssl._create_default_https_context = ssl._create_unverified_context

  以上内容为大家介绍了python培训之urllib怎么用,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线