@Vofanchik

В чём ошибка get (модуль requests) запроса (не может найти страницу)?

Хочу автоматизировать работу в закупках. Нашёл API который в этом поможет, но его не достаточно для получения необходимой информации, поэтому нужно парсить оф. сайт госзакупок (у него нет api). Получив номер контракта, при get запросе в requests выдаёт что страница не существует, хотя если её вбивать в адресную строку браузера, всё отлично находит. Помогите пожалуйста.
import requests
from pprint import pprint
from bs4 import BeautifulSoup
import re

#prodsearch = {input('Введите поисковой запрос ')}
prodsearch = {'Ван гизон'}
response = requests.get(
    f"http://openapi.clearspending.ru/restapi/v3/contracts/search/?productsearch={prodsearch}&customerregion=77&currentstage=EC&perpage=1&sort=-signDate")

#pprint(response.json())

for contracts in response.json()['contracts']['data']:
    regnum = contracts['regNum']
    print(regnum)
    pprint(contracts['suppliers'][0]['organizationName'])
    print(contracts['contractUrl'])
    payload = {'contractReestrNumber': regnum}
    response_2 = requests.get('https://zakupki.gov.ru/epz/contract/printForm/view.html?', params = payload)
    response_2.encoding = 'utf-8'
    pprint(response_2.text)

    print(contracts['contractUrl'])
    for itera, products in enumerate(contracts['products']):
        pprint(products['name'])
        if itera == 5:
            break
    print('_' * 100)
  • Вопрос задан
  • 54 просмотра
Решения вопроса 1
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Нужно передать user agent и другие заголовки в запросе(их можно посмотреть в dev tools вашего браузера)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы