Форматирование вывода cURL в терминале Windows

2520
Kiwi

Когда я пытаюсь выполнить локоны запроса здесь, Windows 7 (x64) возвращает выход с не сломается ни одна строки:

C:\Users\kiwi>curl http://www.documentcloud.org/api/search.json?q=group:nytimes

{"total":2821,"page":1,"per_page":10,"q":"group:nytimes","documents":[{"id":"862 75-isn-10015-abd-al-rahim-al-nashiri-jtf-gtmo","title":"ISN 10015 - Abd al Rahim al Nashiri - JTF-GTMO Detainee Assessment","access":"public","pages":15,"descri ption":null,"source":null,"created_at":"Sun, 24 Apr 2011 15:50:19 +0000","update d_at":"Mon, 25 Apr 2011 17:11:41 +0000","canonical_url":"http://www.documentclou d.org/documents/86275-isn-10015-abd-al-rahim-al-nashiri-jtf-gtmo.html","resource s":{"pdf":"http://s3.documentcloud.org/documents/86275/isn-10015-abd-al-rahim-al -nashiri-jtf-gtmo.pdf","text":"http://s3.documentcloud.org/documents/86275/isn-1 0015-abd-al-rahim-al-nashiri-jtf-gtmo.txt","thumbnail":"http://s3.documentcloud. org/documents/86275/pages/isn-10015-abd-al-rahim-al-nashiri-jtf-gtmo-p1-thumbnai l.gif","search":"http://www.documentcloud.org/documents/86275/search.json?q=","page":{"text":"http://www.documentcloud.org/documents/86275/pages/isn-1001 5-abd-al-rahim-al-nashiri-jtf-gtmo-p.txt","image":"http://s3.documentcloud .org/documents/86275/pages/isn-10015-abd-al-rahim-al-nashiri-jtf-gtmo-p-.gif"}}},{"id":"86274-isn-10020-majid-khan-jtf-gtmo-detainee-assessment","ti tle":"ISN 10020 - Majid Khan - JTF-GTMO Detainee Assessment","access":"public"," pages":12,"description":null,"source":null,"created_at":"Sun, 24 Apr 2011 15:50: 18 +0000","updated_at":"Mon, 25 Apr 2011 17:10:01 +0000","canonical_url":"http:/ /www.documentcloud.org/documents/86274-isn-10020-majid-khan-jtf-gtmo-detainee-as sessment.html","resources":{"pdf":"http://s3.documentcloud.org/documents/86274/i sn-10020-majid-khan-jtf-gtmo-detainee-assessment.pdf" ... 

Это может быть поведение по умолчанию, но могу ли я что-нибудь сделать, чтобы получить читаемый вывод JSON при использовании cURL в Windows?

1

2 ответа на вопрос

1
Keith

Не совсем, но вот сценарий Python, который улучшает это.

import urllib2 import simplejson import pprint  URL = "http://www.documentcloud.org/api/search.json?q=group:nytimes"  def showfeed(argv): argv[1] if len(argv) > 1 else URL fo = urllib2.urlopen(URL) obj = simplejson.loads(fo.read()) pprint.pprint(obj)  if __name__ == "__main__": import sys showfeed(sys.argv) 
Я определенно буду иметь это в виду. Вероятно, возможно переработать его для форматирования вывода JSON из cURL внутри терминала, но это, скорее всего, выходит за рамки моих собственных текущих возможностей. Я посмотрю, что могут знать другие пользователи. Но, тем не менее, даже если кто-то, кто сосредотачивает свое программирование на Python, выходит за рамки вопроса, это очень ценно. Kiwi 13 лет назад 0
Терминал вам не поможет. Вам нужна программа для ее форматирования. Я не думаю, что curl тоже форматирует. На платформе posix это обычно делается с помощью инструментов в конвейере. Keith 13 лет назад 0
0
gitaarik

Check out HTTPie, it's like cURL but a lot more human friendly, meaning that it will format json response accordingly and the like:

http://httpie.org/