如何将原始json从url转换为json或csv?

Pythoner

我有一个网址,可为我提供基于json的原始数据,并且在将原始文本作为json文件导入甚至将其转换为csv时遇到了一些麻烦。

我尝试使用urllib3和BeautifulSoup导入该数据,并将其存储为汤对象。我不能做的是将该数据存储为json和csv(我需要两者)。

我认为导致此问题的问题之一是页面顶部有一行描述返回的结果,但从技术上讲,这不是json数据的一部分:

可能导致问题的顶部代码:

{
"response":{"numFound":1161,"start":0,"docs":[
  {
    "applicationType":"UTILITY",
    "documentId":"US10010749B2",
    "applicationNumber":"US14422067", 

我正在使用的库:

import urllib3
from bs4 import BeautifulSoup
import json

一些代码:

url = "https://developer.uspto.gov/ibd-api/v1/patent/application?assignee=alexander&start=0&rows=5"
http = urllib3.PoolManager()
response = http.request('GET', url)
soup = BeautifulSoup(response.data, "html.parser")

print(soup)

json_data = json.load(url)
print(json_data)

AttributeError: 'str' object has no attribute 'read'

我的最终目标是能够“组织和下载” URL中的所有数据,并将它们存储为json和csv格式。

塞巴斯蒂安·D

首先,您的代码大部分是正确的:

import urllib3
from bs4 import BeautifulSoup
import json
import pandas as pd

url = "https://developer.uspto.gov/ibd-api/v1/patent/application?assignee=alexander&start=0&rows=5"
http = urllib3.PoolManager()
response = http.request('GET', url)
soup = BeautifulSoup(response.data, "html.parser")

json_data = json.loads(soup.text)
print(json_data)

具有正确的json数据,您可以将其导入到panda数据框,然后将其导出到csv:

df = pd.DataFrame(json_data['response']['docs'])
df.to_csv('my_csv.csv', index=False)

编辑

添加了导出到csv的代码

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章