我想将废弃的数据转储到json文件中。我相信它的格式已经很好了(dictionary、list、string等)。我如何输出到json文件中?
#!/usr/bin/python
#weather.scraper
from bs4 import BeautifulSoup
import urllib
import json
def main():
"""weather scraper"""
r = urllib.urlopen("https://www.wunderground.com/history/airport/KPHL/2016/1/1/MonthlyHistory.html?&reqdb.zip=&reqdb.magic=&reqdb.wmo=&MR=1").read()
soup = BeautifulSoup(r, "html.parser")
tables = soup.find_all("table", class_="responsive airport-history-summary-table")
scrapedData = {}
for table in tables:
print 'Weather Philadelphia'
for tr in table.find_all("tr"):
firstTd = tr.find("td")
if firstTd and firstTd.has_attr("class") and "indent" in firstTd['class']:
values = {}
tds = tr.find_all("td")
maxVal = tds[1].find("span", class_="wx-value")
avgVal = tds[2].find("span", class_="wx-value")
minVal = tds[3].find("span", class_="wx-value")
if maxVal:
values['max'] = maxVal.text
if avgVal:
values['avg'] = avgVal.text
if minVal:
values['min'] = minVal.text
if len(tds) > 4:
sumVal = tds[4].find("span", class_="wx-value")
if sumVal:
values['sum'] = sumVal.text
scrapedData[firstTd.text] = values
print scrapedData
if __name__ == "__main__":
main()
您需要使用以下内容:
with open('output.json', 'w') as jsonFile:
json.dump(scrapedData, jsonFile)
您可以提供完整的路径,如打开('C:\用户\用户\桌面\output.json','w')而不是打开('output.json','w'),例如将文件输出到用户的桌面。
我想将字典转储到文件,就像将Python字典转储到JSON文件一样。但是我面临着编码的问题:当我简单地做 我在终端中得到类似这样的东西: 所以它是正常的、人类可读的文本。但是当我以这种方式将同一个字典转储到某个json文件时: 文件中有奇怪的混乱的特殊字符: 我尝试像这里一样指定ensure_ascii=False:Python将JSON文件保存为UTF-8,但它会抛出UnicodeEncodeE
问题内容: 我一直在寻找有关此问题的答案,但似乎无法找到答案。也许到了傍晚才找出答案,所以我转向这里的优秀读者。 我从CouchDB记录中提取了以下JSON数据: 此数据存储在Python字典中,该字典位于称为“ ” 的字典中键“ ” 下。我想将此数据从CouchDB转换为Python dict,以便可以在Django模板中执行以下操作: 我发现了很多有关将字典转换为JSON的信息,但是没有其他方
目前,我的网络爬虫正在收集所有数据,并将它们全部放入字典中,例如: 在这样做的时候,我必须从每个链接读取所有的数据,并将它们转储到这个数据字典中。是否有一种方法可以将每个页面的每个数据集写入一个json格式的文件(一次一个字典集),以节省内存?由于多出的花括号,尝试将json格式弄得一团糟。我只想一起输出一个json文件。
问题内容: 我有一个字典列表,看起来像这样: 等等。列表中可能还有更多文档。我需要将它们转换为一个JSON文档,可以通过bottle返回该文档,但我不知道该怎么做。请帮忙。我在该网站上看到了类似的问题,但是我无法理解那里的解决方案。 问题答案: 使用json库 顺便说一句,您可能会考虑将变量列表更改为另一个名称,这是用于创建列表的内置函数,如果不更改变量名称,则可能会出现一些意外行为或错误代码。
问题内容: 目前,我有这本词典,使用印刷: 当我这样做时: 我收到此错误: 问题答案: 如果您可以在json中使用不可打印的符号,请添加到通话中。 如果是假的,那么返回值将是一个 实例受到正常的Python来 强制规则,而不是被转义为ASCII 。
问题内容: 我无法访问JSON中的数据。我究竟做错了什么? 问题答案: 将字典转换为对象,而不是对象!因此,您必须使用方法将其加载到 请参阅作为保存方法和检索方法。 这是代码示例,可以帮助您进一步了解它: