Я - бэкенд-разработчик в моей нынешней компании. Когда у команды front-end есть проблема, они иногда будут использовать функцию «запрос на копирование» Chrome devtool как функцию завивки и отправить мне проблемный запрос на завивание. Я думал, что было бы здорово, если бы я мог написать сценарий, чтобы преобразовать эти завитки по-разному - удаление, добавление или изменение параметров, между прочим.curl command to python dict
Первый шаг здесь, я думаю, будет разбирать команду во что-то более удобное для работы. Я думал об использовании чего-то вроде click или docopt, но не видел легкой команды, чтобы сделать command line string
->intelligent python object
или что-то в этом роде. В идеале это будет работать не только в этом случае, но и для любой действующей команды Unix. Есть ли lib, который может сделать это легко? Или мне нужно расширить одну из этих библиотек? Или мне лучше просто написать что-то с нуля?
Пример завитка Я пытаюсь разобрать:
локон http://myhost?myarg=ACTIVE&myotherarg=1 -H Pragma: нет кэша -H Происхождение: http://localhost:5000 -H Accept-Encoding: GZIP, выкачать, SDCH -H Accept-язык: en-US, en; q = 0.8 -H Разрешение: токен xxxxxxxx1234567 -H Accept: application/json, text/javascript, /; q = 0.01 -H Cache-Control: no-cache -H User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_2) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/48.0.2564.103 Safari/537.36 -H соединения: держать-жив -h Referer: http://localhost:5000/projects/7/overview-all/active/ --compressed
Вы могли бы хотеть рассмотреть написание питона адаптации к этому: https://shibukawa.github.io/curl_as_dsl/, который является общим завиток-команда -line-to-language-X-конвертер с поддержкой многих других языков. –
Это круто. Спасибо за ссылку. –