#python #json #web-scraping
Вопрос:
Я пытаюсь получить данные о тендерах с этого веб-сайта.
Веб-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)