I've an encoding problem with my script. This is my script :
def parse_airfields(): html = urlopen('https://www.sia.aviation-civile.gouv.fr/aip/enligne/FRANCE/AIRAC-2015-09-17/html/eAIP/FR-AD-1.3-fr-FR.html').read() html = html.decode('utf-8') soup = BeautifulSoup(html, 'lxml') # A lot of work [....] return airfields if __name__ == '__main__': airfields = parse_airfields() for airfield in airfields: for value in airfield.values(): if isinstance(value, str): value.encode('utf-8') with open('airfields.json', 'w') as airfields_file: json.dump(airfields, airfields_file, indent=4, sort_keys=True) I tried without encode() and without decode() but I have the same résult... An encoding problem in my JSON file: 
Why ? Thanks for your help!
encode()method disposes of the result.