Pipreqs: SyntaxError: invalid non-printable character U+FEFF
Pipreqs: SyntaxError: invalid non-printable character U+FEFF
当我尝试 运行 pipreqs /path/to/project
它返回
File "<unknown>", line 1
# !/usr/bin/env python3
^
SyntaxError: invalid non-printable character U+FEFF
我的项目包含许多文件,并且所有文件都包含自己的导入。我在某处读到,为多个文件创建 requirements.txt 可能是个问题,因此我尝试将主文件移至新目录并在其中添加 运行 pipreqs,但同样没有成功。
我的导入是这样的:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#######################################################
# Initialise Wikipedia agent
#######################################################
import requests
import json
import aiml
import wikipedia
import numpy as np
from nltk.sem.logic import *
from nltk.inference.resolution import *
from nltk.inference import ResolutionProver
from nltk.inference.nonmonotonic import *
from nltk import *
from nltk.sem import logic
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
import pandas as pd
from fuzzywuzzy import fuzz
import tkinter as tk
from tkinter import filedialog
from azure.cognitiveservices.vision.computervision import ComputerVisionClient
from msrest.authentication import CognitiveServicesCredentials
import tensorflow_hub as hub
有人知道它可能是什么吗?任何帮助将不胜感激:)
编辑:
忘记说明:运行 Python 3.9.10
和 pipreqs
是使用 pip3
安装的
你在Windows吗?您的文件包含 Unicode byte-order 标记。有些服务不喜欢这样。如果您删除 BOM,它应该可以工作。
字符 U+FEFF 是字节顺序标记,或 BOM。
您可以使用带或不带 BOM 的 UTF 编码保存文本文件,错误消息似乎表明您的系统可以处理 UTF,但不喜欢 BOM,因此您应该尝试重写不带 BOM 的文件.
或者,有一些方法可以告诉 Python 使用环境变量在命令行上使用不同的编码,但我不会去那里,除非你绝对必须并且无法控制文件的编码你自己。
当我尝试 运行 pipreqs /path/to/project
它返回
File "<unknown>", line 1
# !/usr/bin/env python3
^
SyntaxError: invalid non-printable character U+FEFF
我的项目包含许多文件,并且所有文件都包含自己的导入。我在某处读到,为多个文件创建 requirements.txt 可能是个问题,因此我尝试将主文件移至新目录并在其中添加 运行 pipreqs,但同样没有成功。
我的导入是这样的:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#######################################################
# Initialise Wikipedia agent
#######################################################
import requests
import json
import aiml
import wikipedia
import numpy as np
from nltk.sem.logic import *
from nltk.inference.resolution import *
from nltk.inference import ResolutionProver
from nltk.inference.nonmonotonic import *
from nltk import *
from nltk.sem import logic
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
import pandas as pd
from fuzzywuzzy import fuzz
import tkinter as tk
from tkinter import filedialog
from azure.cognitiveservices.vision.computervision import ComputerVisionClient
from msrest.authentication import CognitiveServicesCredentials
import tensorflow_hub as hub
有人知道它可能是什么吗?任何帮助将不胜感激:)
编辑:
忘记说明:运行 Python 3.9.10
和 pipreqs
是使用 pip3
你在Windows吗?您的文件包含 Unicode byte-order 标记。有些服务不喜欢这样。如果您删除 BOM,它应该可以工作。
字符 U+FEFF 是字节顺序标记,或 BOM。
您可以使用带或不带 BOM 的 UTF 编码保存文本文件,错误消息似乎表明您的系统可以处理 UTF,但不喜欢 BOM,因此您应该尝试重写不带 BOM 的文件.
或者,有一些方法可以告诉 Python 使用环境变量在命令行上使用不同的编码,但我不会去那里,除非你绝对必须并且无法控制文件的编码你自己。