Форум сайта python.su
py.user.next
Да я смотрю, ты уже в собственном коде запутался. Просто надо учиться пользоваться системой контроля версий. Коммиты не должны быть хаотичными. Каждый коммит должен быть со смыслом и полностью описан. Бывает так, что коммиты перекидываются потом, меняется их порядок, делается их слияние и так далее. Поэтому каждый коммит должен быть максимально независим от соседних коммитов.
xam1816Спасибо вам обоим огромное, обе версии работают, однако я затупок уровня бог
'participant.type': ‘Company’
Отредактировано grobi_dex (Май 23, 2023 19:33:39)
Офлайн
grobi_dexОни работали или ты их просто сделал?
я уже сделал за ночь обработчики ответов с выводом нужной инфы в необходимом виде
Отредактировано py.user.next (Май 23, 2023 22:28:33)
Офлайн
py.user.nextО да, они работали. Я уже потирал лапки, что это закончилось и можно лишь потом сменить демо-доступ на обычный и отправлять запросы, но не тут то было, все по новой.
Они работали или ты их просто сделал?
Офлайн
py.user.nextТак, у меня даже с zeep получилось кажется пройти этап авторизации, сейчас выдает ошибку “Error Неверный формат сообщения.: ('Неверный формат сообщения.',)” мне кажется или проблема в отправке этого запроса “response = client.service.GetDebtorByIdBankrup t(inn)”?
сам zeep не внушает доверия
Офлайн
grobi_dexВот отправь сюда то, что у тебя работало. Убедись сначала, что оно работает, что там используется zeep и что ты всё можешь прочитать в ответе.
О да, они работали.
grobi_dexОно проходит авторизацию, но уже требует дебильной дописки wsdl, которая не указана в спецификации. Не нужна она по спецификации. Но без неё оно не открывается через zeep.
Так, у меня даже с zeep получилось кажется пройти этап авторизации
webServiceUrl = 'https://services.fedresurs.ru/Bankruptcy/MessageServiceDemo/WebService.svc?wsdl'
https://services.fedresurs.ru/Bankruptcy/MessageServiceDemo/WebService.svc
grobi_dexДавай, соблюдай инструкцию. Никакой zeep там не указан, составляй голый запрос в виде XML-кода. Либо сиди сам и трать свои пять часов на то, чтобы обнаружить там в конце, что zeep там просто что-то вырезает по своему желанию и всё. Я уже тратил, я понял все прелести zeep и не считаю его больше облегчающим средством, на котором так коротко и красиво можно записывать SOAP-запросы. Лучше написать длиннющий XML-код и передать его просто простой передачей. Тогда всё работает.
взглянешь инструкцию
Отредактировано py.user.next (Май 24, 2023 00:24:36)
Офлайн
grobi_dexтакая себе инструкция, мало что из нее понял, даже пример приведенный в конце пришлось переделать, чтобы что-то получить
Сейчас инструкция такого рода "https://fedresurs.ru/helps/bankrupt/Service_1.42.pdf“.
from bs4 import BeautifulSoup import requests from requests.auth import HTTPDigestAuth url = 'https://services.fedresurs.ru/Bankruptcy/MessageServiceDemo/WebService.svc' username = 'demowebuser' password = 'Ax!761BN' session = requests.Session() auth = HTTPDigestAuth(username, password) resp = session.get(url, auth=auth) if resp.ok: print('авторизация ok') else: print(f'нет доступа {resp.status_code}') xml_data = '''<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <GetMessageIds xmlns="http://tempuri.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tempuri.org/ "> <startDate>2014-12-14T00:00:00</startDate> <endDate>2015-01-14T00:00:00</endDate> </GetMessageIds> </s:Body> </s:Envelope>''' headers = {'Content-Type': 'text/xml', 'soapAction': "http://tempuri.org/IMessageService/GetMessageIds"} r = session.post(url + '?wsdl', data=xml_data, headers=headers, auth=auth) if r.ok: soup = BeautifulSoup(r.text, 'xml') print([i.text for i in soup.find_all('int')]) else: print(f'error {r.status_code}')
авторизация ok
['477635', '474130', '474123', '467547', '473224', '466549', '466547', '466543', '466538', '466525', '466521', '466560', '466562', '465309', '464816', '462389', '462372', '461871', '461857', '460175', '458217', '458213']
Process finished with exit code 0
Отредактировано xam1816 (Май 24, 2023 12:12:53)
Офлайн