webdiff 安装失败和不支持中文
webdiff 是一个挺好用的 git 差异对比工具。需要使用:
pip install webdiff
但是很奇怪,公司的电脑能装上,自己家的电脑装不上。报错如下:
Complete output (1 lines):
error in webdiff setup command: "values of 'package_data' dict" must be a list of strings (got 'webdiff/static/*')
----------------------------------------
又或者是关于 PyGitHub
的报错。
解决办法
下载源码 tar.gz
类型的源码: https://pypi.org/project/webdiff/#files
解压,在根目录找到 setup.py
, 将 'PyGithub==1.25.2'
修改成 'PyGithub~=1.25'
(因为 PyGithub 这个包,没有 1.25.2 这个版本,所以找不到版本)
然后在当前目录下,右键 Git Bash here
,执行 tar -zcvf test.tar.gz *
重新打包
在此目录下,运行 cmd 命令:pip install test.tar.gz
进行安装,不出意外的话,应该能安装成功。
不支持中文的解决办法
webdiff 进行差异对比,如果文件中包含中文,则会显示乱码或者报错,这是因为它默认打开文件的方式不是:utf-8
,所以找到你的 webdiff
的安装目录:path_of_python\Lib\site-packages\webdiff
,在 app.py
中查找如下这段话:
contents = open(abs_path).read()
return Response(contents, mimetype='text/plain')
except Exception:
return error('read-error', 'Unable to read %s' % abs_path)
将上面的第一行,添加一个编码:
contents = open(abs_path, encoding='utf-8').read() # 仅仅加了一个 编码 而已
return Response(contents, mimetype='text/plain')
except Exception:
return error('read-error', 'Unable to read %s' % abs_path)
分类:
其他
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构