Конвертирование файлов;ошибка кодирования кодека charmap: символы отображаются на <undefined> - PullRequest
0 голосов
/ 09 марта 2019

Я использую anaconda, чтобы выбрать только некоторые поля из моего файла json.gz, используя-

shodan parse --fields port,isp,hostnames,location,timestamp,org,domain,transport,vulns,ssl,http.server,ip_str --separator , shodan-export.json.gz > shodan-export-proc.json.gz

Я продолжаю получать эту ошибку, хотя-

(base) C:\Users\me>shodan parse --fields ip,port,isp,hostnames,location,timestamp,org,domain,transport,vulns,ssl,http.server,ip_str --separator , shodan-export.json.gz > shodan-export-proc.json.gz
Traceback (most recent call last):
  File "D:\Software\Anaconda\Scripts\shodan-script.py", line 11, in <module>
    load_entry_point('shodan==1.11.1', 'console_scripts', 'shodan')()
  File "D:\Software\Anaconda\lib\site-packages\click\core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "D:\Software\Anaconda\lib\site-packages\click\core.py", line 717, in main
    rv = self.invoke(ctx)
  File "D:\Software\Anaconda\lib\site-packages\click\core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "D:\Software\Anaconda\lib\site-packages\click\core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "D:\Software\Anaconda\lib\site-packages\click\core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "D:\Software\Anaconda\lib\site-packages\shodan-1.11.1-py3.7.egg\shodan\__main__.py", line 360, in parse
  File "D:\Software\Anaconda\lib\site-packages\click\utils.py", line 260, in echo
    file.write(message)
  File "D:\Software\Anaconda\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 3627-3628: character maps to <undefined>

Я столкнулся с этой проблемой GitHub и считаю, что мне нужно использовать кодировку utf-8 при конвертации моего файла; но как мне сделать это для Шодана / Анаконды?

https://github.com/achillean/shodan-python/issues/34

1 Ответ

0 голосов
/ 11 апреля 2019

В Anaconda - введите следующее, и оно будет работать -

chcp 65001
set PYTHONIOENCODING=utf-8
...