环境准备
HTTP请求依赖于Python的request库(RPA已内置),可直接在流程开发时引入
HTTP的一些参数格式的处理、请求返回体的解析等,可能涉及json处理,因此需要引入json库(RPA已内置)
综上,在RPA编辑器中,引入依赖如下图
开发示例
本文档主要针对HTTP请求中的Get请求和Post请求给出相关得开发示例
Get请求
Get请求的主要内容包含url、params(可选)、header(可选)
from rpa.core import *
from rpa.utils import *
import rpa4 as rpa # 使用V4引擎
import requests
import json
def start():
# 如果需要传递参数,可通过url拼接的方式,也可以通过params的方式
# 通过url拼接参数
url = "http://www.baidu.com/s?"
# 通过params传递参数
params = {
"params1": "abc"
}
# header可选
headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"}
response = requests.get(url, params=params, headers=headers)
print(response.text)
Post请求
POST请求的主要内容包含url、header(可选)、data
from rpa.core import *
from rpa.utils import *
import rpa4 as rpa # 使用V4引擎
import requests
import json
def start():
# 在此处开始编写您的应用
url = "http://httpbin.org/post"
# header可选,内容视接口规则而定
headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}
data = {
"type": "text",
"content": "text_content",
"date": "20000101"
}
# 如果接口需要的data为dict格式
response = requests.post(url, data=data, headers=headers)
# 如果接口需要的data为json格式
response = requests.post(url, data=json.dumps(data), headers=headers)
print(response.text)
HTTP请求response常用属性与方法
response 常用属性
status_code
type:int
含义:HTTP响应的状态码,常见的有200、404、500等
reason
type: str
含义:HTTP 相应的描述,如OK、Not Found等
headers
type: dict
含义:HTTP相应头
url
type: str
含义:请求的真实地址
histroy
type: list
含义:访问的历史记录(重定向记录)
encoding
type: str
含义:HTTP相应头的编码字段,response.text获取返回值时,就是按照encoding指定的编码格式进行解码。如果未指定,统一按照“ISO-8859-1”进行解码
cookie
type: RequestsCookieJar
含义:获取cookie
property常用方法
ok
返回类型:bool
含义:状态码是否小于400
text
返回类型:str
含义:经过编码后的文本内容
普通方法
json()
返回类型:json格式
含义:转换为json格式的数据
文档内容是否对您有帮助?