解决安装PyMuPDF(也被称为fitz库)的问题(可成功安装且使用)

解决安装PyMuPDF(也被称为fitz库)的问题(可成功安装且使用)

  • 安装方法:
  • 一些安装时报错的原因解析:
    • 报错1:
    • 报错2:
    • 报错3-无效的分发包警告:
    • 报错4:
  • 使用实例

在使用PyMuPDF 发现 直接pip install PyMuPDF 会安装失败或者安装后无法使用

安装方法:

1.在https://pypi.org/project/PyMuPDF/#files 查找到适合自己电脑python版本的.whl文件
2.下载.whl文件在当前项目目录下,以PyMuPDF-1.23.26-cp310-none-win_amd64.whl为例

3,在终端命令行输入 pip install PyMuPDF-1.23.26-cp310-none-win_amd64.whl即可

在这之前,需要把安装错误的卸载掉

一些安装时报错的原因解析:

报错1:

pip install PyMuPDF-1.23.26-cp312-none-win_amd64.whl ERROR:
PyMuPDF-1.23.26-cp312-none-win_amd64.whl is not a supported wheel on this platform.

错误信息表明 PyMuPDF-1.23.26-cp312-none-win_amd64.whl 不是一个在您当前平台上受支持的 wheel 文件。这通常是因为 wheel 文件是为特定的 Python 版本和操作系统构建的。cp312 表示这个 wheel 文件是为 Python 3.12 版本构建的,而 win_amd64 表示它是为 Windows 64 位系统构建的。要选择适合自己的版本

报错2:

pip 版本过旧:有时候,较旧的 pip 版本可能无法正确识别或安装某些 wheel 文件。请尝试更新 pip 到最新版本:

python -m pip install --upgrade pip

报错3-无效的分发包警告:

WARNING: Ignoring invalid distribution -illow
(c:\users\zhuang\pycharmprojects\pythonproject2\venv\lib\site-packages)
WARNING: Ignoring invalid distribution -atplotlib
(c:\users\zhuang\pycharmprojects\pythonproject2\venv\lib\site-packages)

这些警告表明在您的虚拟环境site-packages目录中,存在某些名称不正确的分发包。可能是在安装或升级包时出现了问题,导致包的元数据受损。您可以尝试删除这些损坏的包并重新安装它们。

进入c:\users\zhuang\pycharmprojects\pythonproject2\venv\lib\site-packages找到相关的包,删除以~为开头的相关文件夹即可
在这里插入图片描述

报错4:

Installing collected packages: PyMuPDFb, PyMuPDF Successfully
installed PyMuPDF-1.23.26 PyMuPDFb-1.23.22WARNING: You are using pip version 21.3.1; however, version 24.0 is available.

在安装过程中,pip似乎又尝试从缓存中安装了一个名为 PyMuPDFb 的包,并且成功安装了 PyMuPDF 和 PyMuPDFb 两个包。这可能是因为您有一个名为 PyMuPDFb 的依赖项在您的 requirements.txt 文件中或者是由其他某个过程触发的

如果 PyMuPDFb 不是一个您需要的包,您可能想要卸载它以避免潜在的冲突。您可以使用以下命令来卸载它:pip uninstall PyMuPDFb

使用实例

使用PyMuPDF(也被称为fitz库)来获取PDF文献的标题通常涉及读取PDF的元数据。PDF文档的元数据可以包含诸如标题、作者、创建日期等信息。以下是一个基本的示例,

import fitz  # PyMuPDF的别名  # 打开PDF文件  
pdf_path = 'path_to_your_document.pdf'  # 替换为你的PDF文件路径  
doc = fitz.open(pdf_path)  # 获取PDF的元数据字典  
metadata = doc.metadata  # 尝试从元数据字典中获取标题  
title = metadata.get('title')  if title:  print(f"PDF标题: {title}")  
else:  print("PDF标题未找到。")  # 关闭文档  
doc.close()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/744970.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电子学会 2023.03 Python 3级(yanpuxin)

十进制数111转换成二进制数是? 1、十进制数111转换成二进制数是?( ) A 111 B 1111011 C 101111 D 1101111 正确答案:D 试题解析: 十进制转二进制,采用除二倒取余数,直到商为0为止。 2、某班有36人…

YOLO v8:目标检测的最新王者

本文来自公众号“AI大道理” —————— Yolov8是Yolo系列模型的最新王者,各种指标全面超越现有目标检测模型。 Yolov8借鉴了Yolov5、Yolov6、YoloX等模型的设计优点,全面改进了Yolov5模型结构,同时保持了Yolov5工程化简洁易用的优势。 …

hex文件格式解析

本文框架 1. hex文件格式1.1 数据长度1.2 地址域1.3 数据类型1.4 数据域1.5 CRC校验域 本文对hex文件格式进行解析,介绍各部分组成及其含义,在此mark下,方便后续开发脚本对hex文件进行操作。 1. hex文件格式 Intel HEX文件是由一行行符合Int…

Vue3调用钉钉api,内嵌H5微应用单点登录对接

钉钉内嵌H5微应用单点登录对接 https://open.dingtalk.com/document/isvapp/obtain-the-userid-of-a-user-by-using-the-log-free 前端需要的代码 1、安装 dingtalk-jsapi npm install dingtalk-jsapi2、在所需页面引入 import * as dd from dingtalk-jsapi; // 引入钉钉a…

使用vscode+clangd+bear+publickeyssh远程开发Linux程序

目录 配置ssh密钥远程登录登录远程Linux主机安装必要软件安装vscode插件1.安装remote-ssh插件2.通过vscode远程连接到linux机器3.在远程安装插件clangd4.关闭C/C Intellense engine 使用vscodeclangdbear1.修改Makefile2.编译内核3.结果 配置ssh密钥远程登录 一定要配置成密钥…

暗光增强——IAT网络推理测试(详细图文教程)

IAT模型由两个独立的分支组成,局部分支用于像素调整,并输出两个用于加法和乘法的特征图。全局分支用于全局调整并输出颜色矩阵和gamma值,全局分支受DETR启发,网络通过动态查询学习的方式更新颜色矩阵和gamma值。整个模型只有超过9…

Pytorch入门实战 P2-CIFAR10彩色图片识别

目录 一、前期准备 1、数据集CIFAR10 2、判断自己的设备,是否可以使用GPU运行。 3、下载数据集,划分好训练集和测试集 4、加载训练集、测试集 5、取一个批次查看下 6、数据可视化 二、搭建简单的CNN网络模型 三、训练模型 1、设置超参数 2、编…

【CSP试题回顾】201709-3-JSON查询

CSP-201709-3-JSON查询 解题思路 1. 初始化数据结构 map<string, string> strContent: 存储字符串类型属性的内容。键是属性名&#xff08;可能包含通过点.连接的多级属性名&#xff09;&#xff0c;值是属性的字符串值。vector<string> keyVec: 存储当前正在处…

【DAY11 软考中级备考笔记】数据结构 排序操作系统

数据结构 排序&&操作系统 3月14日 – 天气&#xff1a;晴 今天天气非常热&#xff0c;已经到20度了&#xff0c;春天已经来了。 1. 堆排序 堆排序的思想是首先建立一个堆&#xff0c;然后弹出堆顶元素&#xff0c;剩下的元素再形成一个堆&#xff0c;然后继续弹出元素&…

为什么要用scrapy爬虫库?而不是纯python进行爬虫?

为什么要用scrapy爬虫库&#xff1f;而不是纯python进行爬虫&#xff1f; Scrapy的优点Scrapy节省的工作使用纯Python编写爬虫的不足 Scrapy是一个使用Python编写的开源和协作的web爬虫框架&#xff0c;它被设计用于爬取网页数据并从中提取结构化数据。Scrapy的强大之处在于其广…

工科硕士研究生毕业论文撰写总结

工科硕士研究生毕业论文撰写总结 最近一段看了十几篇研究生毕业论文&#xff0c;发现不少问题。结合最近几年当评委及审论文的经验来总结下工科硕士研究生毕业论文撰写毕业论文问题与经验。 一&#xff0e;科技论文的总要求 论文是写给同行看的&#xff0c;注意读者对象。&a…

页面侧边栏顶部固定和底部固定方法

顶部固定用于侧边栏低于屏幕高度----左侧边栏 底部固定用于侧边栏高于屏幕高度----右侧边栏 vue页面方法 页面布局 页面样式&#xff0c;因为内容比较多&#xff0c; 只展示主要代码 * {margin: 0;padding: 0;text-align: center; } .head {width: 100%;height: 88px;back…

在notion里面实现四象限清单

四象限清单是一种时间管理工具&#xff0c;旨在帮助人们根据任务的重要性和紧急性来优先排序他们的工作。这个概念最早由德怀特艾森豪威尔提出&#xff0c;后来又被史蒂芬柯维在他的著作《高效能人士的七个习惯》中进一步普及。四象限清单将任务分为四个类别&#xff1a; 第一…

VueX详解

Vuex 主要应用于Vue.js中管理数据状态的一个库通过创建一个集中的数据存储&#xff0c;供程序中所有组件访问 使用场景 涉及到非父子关系的组件&#xff0c;例如兄弟关系、祖孙关系&#xff0c;甚至更远的关系组件之间的联系中大型单页应用&#xff0c;考虑如何更好地在组件外部…

洛谷 P5018 对称二叉树

题目背景 NOIP2018 普及组 T4 题目描述 一棵有点权的有根树如果满足以下条件&#xff0c;则被轩轩称为对称二叉树&#xff1a; 二叉树&#xff1b;将这棵树所有节点的左右子树交换&#xff0c;新树和原树对应位置的结构相同且点权相等。 下图中节点内的数字为权值&#xf…

window server2012 卸载iis后,远程连接黑屏

原因分析&#xff1a; 因为自己在卸载IIS的时候&#xff0c;不小心卸载了.net framework&#xff0c;系统没有了图形界面&#xff08;由完整模式Full变为了核心模式core&#xff09;&#xff0c;需要重新恢复.net framework4.5。 解决方法分析&#xff1a; 需要将核心模式co…

基于Vue移动端电影票务服务APP设计与实现

目 录 摘 要 I Abstract II 引 言 1 1 相关技术 3 1.1 Vue框架 3 1.2 数据库MongoDB 3 1.3 Axios请求 3 1.4 H5、CSS3和JavaScript 4 1.5 本章小结 4 2 系统分析 5 2.1 功能需求 5 2.2 用例分析 5 2.3 用户功能 6 2.4本章小结 6 3 基于Vue电影票务服务APP设计 7 3.1 页面设计 …

YOLOv9改进策略:注意力机制 |通道注意力和空间注意力CBAM | GAM超越CBAM,不计成本提高精度

&#x1f4a1;&#x1f4a1;&#x1f4a1;本文改进内容&#xff1a;通道注意力和空间注意力CBAM&#xff0c;全新注意力GAM&#xff1a;超越CBAM&#xff0c;不计成本提高精度 改进结构图如下&#xff1a; YOLOv9魔术师专栏 ☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️…

Kotlin/Java中String的equals和==

Kotlin/Java中String的equals和 在Java中&#xff0c;如果定义一个常量String和new出一个String对象&#xff0c;是不同的&#xff1a; String s1 "zhang" String s2 new String("zhang") 因为在Java看来&#xff0c;s1只是一个常量&#xff0c;会放在…

Let’s Move Sui , 一起来学习吧

Let’s Move Sui是一个全新的交互式学习平台&#xff0c;通过SuiFrens的帮助教您如何在Sui上构建。设计供新手和经验丰富的开发者使用&#xff0c;Let’s Move Sui提供了一次非凡的Sui开发之旅&#xff0c;利用了Move在Sui上的独特之处&#xff0c;从基于对象的数据模型的基础知…