#python
Вопрос:
Я новичок в программировании и python. В настоящее время я использую скрипт python для получения заголовка HTTP, но вывод не очень аккуратный. Есть ли какой-либо способ разделить каждое содержимое, чтобы отобразить по одной строке в каждом? Заранее спасибо.
import json
import requests
something = requests.get("http://www.google.com")
test1 = something.headers
result = json.dumps(dict(test1))
print (result)
{"Date": "Wed, 00 Jun 2021 00:00:00 GMT", "Expires": "-1", "Cache-Control": "private, max-age=0", "Content-Type": "text/html; charset=ISO-8859-1", "P3P": "CP="This is not a P3P policy! See g.co/p3phelp for more info."", "Content-Encoding": "gzip", "Server": "gws", "Content-Length": "5804", "X-XSS-Protection": "0", "X-Frame-Options": "SAMEORIGIN",}
Content-Type: text/html; charset=ISO-8859-1
P3P: CP="This is not a P3P policy! See g.co/p3phelp for more info."
Date: Wed, 09 Jun 2021 00:00:00 GMT
Server: gws
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked
Expires: Wed, 00 Jun 2021 00:00:00 GMT
Cache-Control: private
Ответ №1:
добро пожаловать в python.
функция json.dumps() обладает функциями, которые позволяют вам это делать. В качестве второго параметра внутри вашей функции добавьте «отступ = 2», это должно сделать его красивее и разделить содержимое по строкам.
json.dumps(dict(test1),indent=2)
Ответ №2:
Симпатичный принт-твой друг. Этот модуль очень полезен для печати json, словарей, списков и т.д…
from pprint import pprint
pprint(result)
Редактировать:
Только что понял, что вы можете сделать свой код намного короче, так как вам не нужно создавать json из заголовков:
import requests
from pprint import pprint
something = requests.get("http://www.google.com")
test1 = something.headers
pprint(test1)