urequests --- HTTP客户端的相关功能函数

之前我们用了 socket 库,这个作为入门的工具还是不错的,对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助。 入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取。 那么这一节来简单介绍一下 urequests 库的基本用法。

Response类

class urequests.Response(s)

该Response类的对象,包含服务器对HTTP请求的响应。

  • s-ussl对象

方法

urequests.close()

关闭socket。

@urequests.content

返回响应的内容,以字节为单位。

@urequests.text

以文本方式返回响应的内容,编码为unicode。

urequests.json()

返回响应的json编码内容并转为dict类型。

方法

urequests.request(method, url, data=None, json=None, headers={}, params=None, files=None)

向服务器发送HTTP请求。

  • method - 要使用的HTTP方法
  • url - 要发送的URL
  • data - 要附加到请求的正文。如果提供字典或元组列表,则将进行表单编码。
  • json - json用于附加到请求的主体。
  • headers - 要发送的标头字典。
  • params - 附加到URL的URL参数。如果提供字典或元组列表,则将进行表单编码。
  • files - 用于文件上传,类型为2元组,其中定义了文件名,文件路径和content类型。如下,{‘name’, (file directory,content-type)}
urequests.head(url, **kw)

发送HEAD请求,返回Response对象。

  • url - Request对象的URL
  • **kw - request方法的参数。
urequests.get(url, **kw)

发送GET请求,返回Response对象。

  • url - Request对象的URL
  • **kw - request方法的参数。
urequests.post(url, **kw)

发送POST请求,返回Response对象。

  • url - Request对象的URL
  • **kw - request方法的参数。
urequests.put(url, **kw)

发送PUT请求,返回Response对象。

  • url - Request对象的URL
  • **kw - request方法的参数。
urequests.patch(url, **kw)

送PATCH请求,返回Response对象。

  • url - Request对象的URL
  • **kw - request方法的参数。
urequests.delete(url, **kw)

发送DELETE请求。,返回Response对象。

  • url - Request对象的URL
  • **kw - request方法的参数。
requests示例
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
import urequests
from mpython import *

#连接网络
my_wifi = wifi()
my_wifi.connectWiFi('', '')

# 访问ip地址 api
r = requests.get("http://ip-api.com/json/")
print(r)
print(r.content)  # 返回响应的内容
print(r.text)  # 以文本方式返回响应的内容
print(r.content)
print(r.json())  # 返回响应的json编码内容并转为dict类型

# It's mandatory to close response objects as soon as you finished
# working with them. On MicroPython platforms without full-fledged
# OS, not doing so may lead to resource leaks and malfunction.
r.close()