前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mac 和 Linux/Win 均可用!微博爬虫系列更新

Mac 和 Linux/Win 均可用!微博爬虫系列更新

作者头像
月小水长
发布2022-01-20 17:04:56
1K0
发布2022-01-20 17:04:56
举报
文章被收录于专栏:月小水长

pyd 之殇

之前发布的这三篇爬虫系列

2021 新版微博话题爬虫发布

2021 新版微博评论及其子评论爬虫发布

2021 微博最新转发爬虫发布

发布的爬虫文件都是 pyd 格式,只能运行在 windows 系统上,Mac OS 和 Linux OS 则无能为力?

pyc 才是 YYDS

今天研究了下,发现只要转 pyd 为 pyc 格式,就能跨平台运行了。但为什么 pyc 就可以跨平台!不由得感概相见恨晚,pyc 才是 yyds 啊!

预警,下面两段话是将 pyd 和 pyc 原理的,解释为什么 pyc 能跨平台,不感兴趣的同志可以跳过~

我们知道 windows 系统有许多 DLL 后缀的文件,即动态链接库,在运行时链接到调用程序。在运行时链接到 DLL 之类的库的主要优点是,它可以促进代码重用,模块化体系结构和更快的程序启动。结果,DLL 在 Windows 操作系统周围提供了许多功能。pyd 这个 d 就是取自于 DLL,只能运行在 windows 系统上

而我们安装的 python 目录下有许多 pyc 文件,这个 c 是编译 compile 过的意思,可以使用 python 解释器编译 py 文件 成 pyc 字节码文件。使用 pyc 可以加快程序的加载速度,而不能加快程序的实际执行速度,这就是解释为什么我们安装 python 目录很多第三方库下是 pyc 文件的原因,因为它可以使得 import 一些第三方库的速度加快。由于 .pyc 文件是编译好的字节码,它是独立于平台的,因此可以在不同体系结构的计算机之间共享

使用下面一行命令就能将当前目录下的所有 py 文件打成 pyc

代码语言:javascript
复制
python -m compileall ./

注意了

好了,理论不多说,只需要打开对应的百度云链接获取最新的 pyc 文件即可,最好删除了原来的 pyd 使用

需要注意的是 pyc 文件放到 Pycharm 中并不会显示它的存在?,但是确实实在存在于我们的文件夹之中的

Pycharm 中文件目录

文件浏览器中文件目录

这是为什么呢?我猜测是 Pycharm 把 pyc exclude 排除显示了,上图 Pycharm 的 External Libraries 就是我们的 python 解析器,它有许许多多 pyc,如果全部显示。那么 index 索引将会非常大,严重会导致电脑卡死。

还有一点需要注意的是,由于 pyc 是由特定的 python 解析器生成的,它虽然能跨平台,但是不能跨版本,也只能运行在特定的 Python 版本上上文百度链接里的 pyc 全部是 Python 3.6.6 64 bit 生成的,它也只能运行在 Win/Mac/Linux 等任意系统的 Python 3.6.6 64 位。如果 Python 版本不对,它会报 ImportError: bad magic number 错误。

题外话

好了,今天就讲到这里,上一篇开放 py 源代码的微博超话爬虫 【开源】微博超话相册下载及超话活跃粉丝抓取 也不要错过了,豆瓣小组爬虫已经完成了,此文越多点赞越早发出来,thanks for your attention!!!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 月小水长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • pyd 之殇
  • pyc 才是 YYDS
  • 注意了
  • 题外话
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档