带请求库的Python POST请求

2024-09-26 18:00:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图通过提交一个表单(calculatecapex按钮)从https://www.desaldata.com/cost_estimator中获取一些数据。你知道吗

为了获取post请求的信息,我在浏览器中手动提交表单时使用了Chrome的开发工具(network标签)来获取信息。你知道吗

Request URL: https://www.desaldata.com/cost_estimator.json
Cache-Control: max-age=0, private, must-revalidate
Content-Type: application/json; charset=utf-8

以下是表单数据

utf8: ✓
[technology]: swro
capacity: 200000
[seawater]: 0
[seawater_min_temp]: 0
[seawater_max_temp]: 0
[med_or_msf_pretreatment]: 0
[pretreatment]: 0
[second_pass]: 0
[remineralization]: 0
[intake_outfall]: 0
[permitting]: 0
[country_factor]: 
annual_production: 69,350,000
utilisation_rate: 95
energy_consumption: 3.5
energy_price: 0.08
[labour_factor]: 1
interest_rate: 6
equity_yield: 12
loan_repayment_timescale: 20
debt_equity_split: 75
commit: Calculate Capex
cost_estimator.json

这是我的密码。你知道吗

import requests

headers = {'content-type': 'application/json'}
request_url = "https://www.desaldata.com/cost_estimator.json"
data = {'[technology]': 'swro', 'capacity': 200000, '[seawater]': 0, '[seawater_min_temp]': 0, '[seawater_max_temp]': 0,'[med_or_msf_pretreatment]': 0, '[pretreatment]': 0, '[second_pass]': 0, '[remineralization]': 0, '[intake_outfall]': 0, '[permitting]': 0, 'annual_production': 69350000, 'utilisation_rate': 95, 'energy_consumption': 3.5, 'energy_price': 0.08, '[labour_factor]': 1, 'interest_rate': 6, 'equity_yield': 12, 'loan_repayment_timescale': 20, 'debt_equity_split': 75, 'commit': 'Calculate Capex'}

r = requests.post(request_url, headers = headers, data = data)

我收到400个回复。我不知道如何发送utf8:▼和[country\u factor]:没有值。我应该如何修复代码?你知道吗


Tags: httpscomjson表单ratewwwtempenergy

热门问题