Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将字典元素从beautifulsoup添加到json文件_Json_Python 3.x_Dictionary_Beautifulsoup - Fatal编程技术网

如何将字典元素从beautifulsoup添加到json文件

如何将字典元素从beautifulsoup添加到json文件,json,python-3.x,dictionary,beautifulsoup,Json,Python 3.x,Dictionary,Beautifulsoup,您能帮我如何从字典导入json文件吗?我已经从web上获取了所有标记,但仍然无法保存所有标记。这是我的密码 array= [] data = {} for divdata in soup.findAll('div', {"class": "ratio9_8 box_img fl mr10"}): for div in divdata.findAll('div', {'class': 'img_con lqd'}): for getatag in div.findAll('

您能帮我如何从字典导入json文件吗?我已经从web上获取了所有标记,但仍然无法保存所有标记。这是我的密码

array= []
data = {}
for divdata in soup.findAll('div', {"class": "ratio9_8 box_img fl mr10"}):
    for div in divdata.findAll('div', {'class': 'img_con lqd'}):
        for getatag in div.findAll('a', {'data-category': 'WP Kanal Berita'},href = True):
            for getimgtag in getatag.findAll('img',title=True,src=True):
                array.append(getimgtag['title'])
                array.append(getimgtag['src'])
                array.append(getatag['href'])
                data['title'] = array[0]
                data['image'] = array[1]
                data['link'] = array[2]
with open('data.json', 'w') as outfile:
    json.dump(data, outfile)
运行程序时,我只得到一本字典

{"title": "......", "image": ".....", "link": "...."}

将输出语句放入分配数据的循环中。您正在覆盖每次迭代中的数据。如果您将代码更改为:

array= []
data = {}
for divdata in soup.findAll('div', {"class": "ratio9_8 box_img fl mr10"}):
    for div in divdata.findAll('div', {'class': 'img_con lqd'}):
        for getatag in div.findAll('a', {'data-category': 'WP Kanal Berita'},href = True):
            for getimgtag in getatag.findAll('img',title=True,src=True):
                array.append(getimgtag['title'])
                array.append(getimgtag['src'])
                array.append(getatag['href'])
                data['title'] = array[0]
                data['image'] = array[1]
                data['link'] = array[2]
                with open('data.json', 'a') as outfile:
                    json.dump(data, outfile)
它应该给你你想要的

或者,您可以:

array= []
data = {}
data_list = []
for divdata in soup.findAll('div', {"class": "ratio9_8 box_img fl mr10"}):
    for div in divdata.findAll('div', {'class': 'img_con lqd'}):
        for getatag in div.findAll('a', {'data-category': 'WP Kanal Berita'},href = True):
            for getimgtag in getatag.findAll('img',title=True,src=True):
                array.append(getimgtag['title'])
                array.append(getimgtag['src'])
                array.append(getatag['href'])
                data['title'] = array[0]
                data['image'] = array[1]
                data['link'] = array[2]
                data_list.append(data)
data = {'data_list': data_list}
with open('data.json', 'w') as outfile:
    json.dump(data, outfile)