之前在下载港交所的文件的时候会碰到有些文件异常的情况,文件下载下来,但是不能打开。查到其他的方法不是判断错误就是很麻烦。
 
整理出一个非常简单的方法,将文件以二进制方式打开,然后判断文件的开头是否符合pdf标准:
处理我这个情况非常好用,不一定适用于所有情况
python实现:

def is_pdf_by_path(path):
    with open(path, "rb") as f:
        data = f.read()
        if data and data.startswith(rb"%PDF-1."):
            return True
        return False if __name__ == "__main__":
    print(is_pdf_by_path("/Users/jack/Desktop/1.pdf"))

其中还可以对结尾进行判断,参考链接:https://stackoverflow.com/questions/941813/how-can-i-determine-if-a-file-is-a-pdf-file

# 若果觉得有帮助,可以点个推荐,以便传播

最新文章

  1. UML大战需求分析--阅读笔记02
  2. lua中的数据类型
  3. [Tips] JavaScript 使用hash 对象传参
  4. 【Android 界面效果32】ImageView中XML属性src和background的区别
  5. Supervisor的安装与使用入门
  6. hadoop1 和haddop2 mapperreducer的wordcount详解
  7. 教学项目之-通过Python实现简单的计算器
  8. Android_Studio常用插件
  9. MySQL导入乱码解决
  10. HDU 5366 The mook jong
  11. Java程序员入门:Java程序员面试失败的5大原因
  12. Javascript-数值运算 保留小数点位数,并对最后一位小数各种取整方法
  13. iOS模仿京东商城中的选择地区样式
  14. OpenCV x64 vs2010 下打开摄像头录制视频写成avi(代码为转载)
  15. winform中TextBox只能输入字母
  16. CSS 浮动(float)与定位(position)
  17. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 6.在计算节点上安装并配置计算服务Nova
  18. Java NIO FileChannel
  19. Data Provider 中没有.net framework Data provider for Mysql 的解决方法
  20. 转 Linux调优方案,sysctl.conf的设置

热门文章

  1. docker安装单机hadoop
  2. Linux后台运行任务
  3. linux查看文件的编码格式的方法 set fileencoding
  4. 【分类算法】朴素贝叶斯(Naive Bayes)
  5. Qt KDChart编译
  6. div和span显示在同一行
  7. ubuntu18.04中将刚下载解压的eclipse添加到启动器
  8. 【Leetcode_easy】728. Self Dividing Numbers
  9. ES SQL使用说明文档
  10. python 创建虚拟环境(virtualenv)