首页 > 解决方案 > 无法将请求发布到动态呈现的页面 - 错误代码 500

问题描述

我正在尝试从该网站获取投标数据。

在此处输入图像描述

Web url 有查询要过滤然后搜索。我添加了一些查询和搜索结果,但基本 url 没有改变。

我调查了网络选项卡,发现它正在从 api 获取数据。由于我是新手,所以我复制了 curl 输出并使用curl.trillworks网站将其更改为 python 请求脚本。但是,运行脚本给了我错误代码 500。

我的代码如下

import requests

cookies = {
    '__RequestVerificationToken_L0FwbGljYWNpb25lcy9OQ0ZFL0NvbmN1cnNvcw2': 'Y279hfYEkHFNEYKcWkYQDSnpK_c_PegZB4sqRl3W3O7WA8IOm-1V-bnA4lV46H02gY-7xGiyY4oe5THUG5w4sVE5CP01',
    'ASP.NET_SessionId': 'xizu15jvim4vtfttjzffkm4i',
}

headers = {
    'Connection': 'keep-alive',
    'Accept': '*/*',
    'X-Requested-With': 'XMLHttpRequest',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36',
    'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
    'Origin': 'https://msc.cfe.mx',
    'Sec-Fetch-Site': 'same-origin',
    'Sec-Fetch-Mode': 'cors',
    'Sec-Fetch-Dest': 'empty',
    'Referer': 'https://msc.cfe.mx/Aplicaciones/NCFE/Concursos/',
    'Accept-Language': 'en-US,en;q=0.9',
}

data = {
  '__RequestVerificationToken': 'QDlYn_qjSwc8_uzmpUrr12TMCQNI_E2nGp1W7ttBkd_0rojr30RYquBBmDOdW70oKv-ZhwW5YvnoUAdTS_GTCdlTX6k1^',
  'TipoProcedimientoClave': 'AD^',
  'TipoContratacionClave': '^',
  'IdEntidadFederativa': '0^',
  'Numero': '^',
  'Descripcion': '^',
  'EstadoProcedimientoContratacionClave': '1^',
  'FechaPublicacion': '^',
  'FechaPublicacionIni': '^',
  'FechaPublicacionFin': '^',
  'TestigoSocial': '2^',
  'Modalidad': '0'
}

response = requests.post('https://msc.cfe.mx/Aplicaciones/NCFE/Concursos/Procedure/getProcBusqueda', headers=headers, cookies=cookies, data=data)

标签: pythonjsonweb-scraping

解决方案


推荐阅读