我正在从一个网站获取许多页面的html源代码,我需要将其转换为json对象,并与json文档中的其他元素组合。。我在同一主题上看到了很多问题,但没有一个是有帮助的。
我的代码:
url = "https://totalhash.cymru.com/analysis/?1ce201cf28c6dd738fd4e65da55242822111bd9f" htmlContent = requests.get(url, verify=False) data = htmlContent.text print("data",data) jsonD = json.dumps(htmlContent.text) jsonL = json.loads(jsonD) ContentUrl='{ \"url\" : \"'+str(urls)+'\" ,'+"\n"+' \"uid\" : \"'+str(uniqueID)+'\" ,\n\"page_content\" : \"'+jsonL+'\" , \n\"date\" : \"'+finalDate+'\"}'
上面的代码提供了unicode类型,但是,当我将输出放入jsonLint时,它给了我无效的json错误。有人可以帮助我了解如何将完整的html转换为json对象吗?
jsonD = json.dumps(htmlContent.text)将原始HTML内容转换为JSON字符串表示形式。 jsonL = json.loads(jsonD)将JSON字符串解析回常规字符串/ unicode对象。这将导致无操作,因为由进行的任何转义都由dumps()还原loads()。jsonL包含与相同的数据htmlContent.text。
jsonD = json.dumps(htmlContent.text)
jsonL = json.loads(jsonD)
dumps()
loads()
jsonL
htmlContent.text
尝试使用json.dumps生成最终的JSON,而不是手工构建JSON:
json.dumps
ContentUrl = json.dumps({ 'url': str(urls), 'uid': str(uniqueID), 'page_content': htmlContent.text, 'date': finalDate })