Bir web sitesinden başlık almayı deniyorum, bir dosyaya yazmak için JSON içinde kodlarım. İki farklı yolu başarıdan denedim. -> json_header = strPython ile bir üstbilgi edinin ve JSON'a dönüştürün (istekleri - urllib2 - json)
TypeError: is not JSON serializable
Bu yüzden bir dizeye nesneyi dönüştürerek bu sorunu aşmaya çalışacağız: bu şekilde urllib2 ve json
import urllib2
import json
host = ("https://www.python.org/")
header = urllib2.urlopen(host).info()
json_header = json.dumps(header)
print json_header
ile İLK
hatası alıyorum Ben json.dumps (başlık) = json_header bu yolla (başlık) ama çıkış bu garip:
istekleri Bu şekilde"Date: Wed, 02 Jul 2014 13:33:37 GMT\r\nServer: nginx\r\nContent-Type: text/html; charset=utf-8\r\nX-Frame-Options: SAMEORIGIN\r\nContent-Length: 45682\r\nAccept-Ranges: bytes\r\nVia: 1.1 varnish\r\nAge: 1263\r\nX-Served-By: cache-fra1220-FRA\r\nX-Cache: HIT\r\nX-Cache-Hits: 2\r\nVary: Cookie\r\nStrict-Transport-Security: max-age=63072000; includeSubDomains\r\nConnection: close\r\n"
import requests
r = requests.get(“https://www.python.org/”)
rh = r.headers
print rh
{'content-length': '45682', 'via': '1.1 varnish', 'x-cache': 'HIT', 'accept-ranges': 'bytes', 'strict-transport-security': 'max-age=63072000; includeSubDomains', 'vary': 'Cookie', 'server': 'nginx', 'x-served-by': 'cache-fra1226-FRA', 'x-cache-hits': '14', 'date': 'Wed, 02 Jul 2014 13:39:33 GMT', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'text/html; charset=utf-8', 'age': '1619'}
ile 10
İKİNCİ çıkış fazlası gibi JSON ama yine tamam değil (‘‘yerine “nin“ve diğer şeyler = gibi görmek;) 'dir. Açıkçası, doğru şekilde yapmadığım bir şey var (ya da çok). Modüllerin belgelerini okumayı denedim, ancak bu sorunun nasıl çözüleceğini anlayamıyorum. Yardımlarınız için teşekkür ederiz.
Teşekkürler Çok fazla @Slater Tyranus. İkinci yöntemin tam olarak aradığım şey bu. Meraktan sadece bir soru. İlk yönteminizin çıktısını okurken bu anahtarların ve değerlerin içinde olduğunu görüyorum ''. Neden bu durumda json.dumps bunu yapar? Geçerli bir JSON biçiminin "" içinde değerleri var mı? –