dump() missing 1 required positional argument: 'fp' in python json

Question:

I am trying to prettify the json format but i am getting this error:

import requests as tt
from bs4 import BeautifulSoup
import json

get_url=tt.get("https://in.pinterest.com/search/pins/?rs=ac&len=2&q=batman%20motivation&eq=batman%20moti&etslf=5839&term_meta[]=batman%7Cautocomplete%7Cundefined&term_meta[]=motivation%7Cautocomplete%7Cundefined")
soup=BeautifulSoup(get_url.text,"html.parser")

select_css=soup.select("script#jsInit1")[0]
for i in select_css:
    print(json.dump(json.loads(i),indent=4,sort_keys=True))

Basically i want to extract this type of element :

'orig': {'width': 1080, 'url': '', 'height': 1349},

I know i can do this with

select_css.get('orig').get('url')

But i am not sure is this json element is nested element under any element ? That’s why i am trying to prettify to get idea.

Asked By: Aaditya Ura

||

Answers:

Use json.dumps() instead. json.dump() needs a file object and dump JSON to it.

Answered By: Hou Lu

It worked when I replaced

json_dump = json.dump(data_set)

by

json_dump = json.dumps(data_set)
Answered By: vinod.s.kadam

You can use json.dumps() instead. json.dump() needs a file object and dump JSON to it.

Answered By: Nam LT
Categories: questions Tags: , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.