Python 潮流周刊#26:requests3 的现状
你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。本周刊开源,欢迎投稿。另有电报频道作为副刊,补充发布更加丰富的资讯。
🐱品牌赞助
本周刊由“Python猫”出品,这是一个以 Python 技术科普和分享为主的科技自媒体,欢迎关注同名公众号。品牌合作请私信联系。
🦄文章&教程
1、Kenneth Reitz:迟来的道歉,以及 requests 3 的进展
2019 年时 requests 3 的筹款闹出了不小的风波,后来似乎没什么消息。现在作者发了一篇道歉文,看来项目是要重启了!文中列举了目前已经完成的一些事情,包括给所有公开接口加上了类型提示、重构所有命名空间和调整成兼容异步编程等。(附:筹款风波之《Why I'm not collaborating with Kenneth Reitz》)
grequests
构建在 gevent
库之上,可以并发多个请求,有效利用异步编程的强大功能。这篇基础教程介绍了它的基本使用方法,以及一个提升性能的建议。
这是一系列博文,目前已更新 6 篇,目标是探索和研究实现 Python 等编程语言所需的概念和算法,将会涉及分词器、解析器、编译器和解释器。
4、使用 Python+ChatGPT 开发一个书籍摘要 AI
一篇教程,用 Python、Langchain 和 OpenAI embedding 开发一个书籍摘要工具。另外,作者使用 Streamlit 发布了一个在线体验网站。
GeneratedField
是正在开发的 Django 5.0 的新功能,利用数据库的能力自动计算数据列的值。作者是 Django 的贡献者,测试了在 SQLite 中使用这个新功能的各种场景。(附:这篇文章还介绍了一些 Django 5.0 中的新东西)
bisect
模块只有两个函数,但可以做很多事,文章介绍了:二分搜索、前缀搜索、在列表中查找连续的相等值、查找字典中最接近的键、自定义对象的排序、按照字典 key 搜索。
7、为什么说在 Windows 上为 Python 3.12 构建的 SciPy 是一个小奇迹?
每当 Python 发布新版本时,三方库的维护者们也要紧锣密鼓开发兼容的对应版本,这不是轻松的事。作者介绍了他们遇到的严峻挑战,其实就是 Python 社区老大难的打包问题。好在维护者们已经找到了适用的解决方案。
8、使用 AI 进行网页抓取实验(使用 GPT-4 解析 HTML)
OpenAI 发布了新的模型,它的能力到底如何呢?使用 GPT-4 作网页抓取,具有哪些优点和缺点呢?文章分别实验了抓取结构良好的网站、抓取 Google 自然搜索结果、抓取 Google SERP、以及抓取 Google MAPS 结果。
9、Django vs Flask:哪个是最好的 Python Web 框架?
Python 圈最为流行的两大 Web 框架,到底应该如何取舍呢?这是一篇细致的长文,详细对比了它们在模板系统、URL 调度器、数据库支持、身份验证及授权、测试、软件架构、学习曲线等方面的差异。没有更好的,只有是否适合你的。
如何在新的 M2 MacBook 上安装 Python 呢?这篇手把手的指导教程中,作者给出的建议是 Pyenv + pyenv-virtualenv 。
11、用 Python 开发简单的 Android 数据分析应用
这篇教程指导你开发一个 Android 数据分析应用,其作用是记录和显示你全天在屏幕上花费的时间。使用的 GUI 框架是kivy
,数据分析使用了Pandas
。
12、改进 Numpy 的 Python API,为 2.0 版本准备
NEP-52 是 Numpy 的一则增强提案,旨在识别 Numpy 中过时、重复和弃用的 Python API,并作重构优化。这项工作是为了顺利迁移到 Numpy 2.0 而做的准备。作者介绍了他在其中遇到的挑战和取得的部分成就。
🎁Python开发者调查🎁官方第七次开发者调查,旨在了解 Python 开发社区的现状,鼓励你花费几分钟来填写:填写地址
🐿️项目&资源
一个视频翻译工具,可将一种语言的视频翻译为另一种语言和配音的视频。(star 1.4K)
2、pyink:Google 内部修改 Black 而成的代码格式化工具
由 Black 派生而成,用于解决 Google 数千名工程师在 monorepo 上工作产生的问题。
由 FastAPI 作者开源的 SQL 数据库,结合了 SQLAlchemy 和 Pydantic,旨在实现简单性、兼容性和稳健性。(star 11.2K)
一个专注于用户体验的后台管理系统,上期分享了关于“Django Admin 丑陋”的文章,wagtail 是可提供给终端用户使用的最佳推荐。(star 16.2K)
5、NBA-Machine-Learning-Sports-Betting:使用机器学习的 NBA 比赛预测
一个机器学习 AI,用于预测 NBA 比赛胜负。包含 2007-08 赛季到本赛季的所有球队数据。
6、Python_EBook_Free:Python 电子书和资源
这个仓库归档了一些 Python 电子书和学习资源,都是 PDF 格式。
一个数据处理框架,结合了 LLM 程序的批处理、流式处理和实时 API,可与各种数据源交互(如 Kafka、CSV 文件、SQL/noSQL 数据库和 REST API)。
它是数据密集型工作流的编排器,可将 Python 函数转换为可观察和编排的工作单元。支持自动重试、分布式执行、调度、缓存等功能,拥有强大的仪表板进行监控。(star 13.2K)
一个支持高清晰度的视频生成和编辑工具,目前包括文字生成视频及图片生成视频两种模型。(star 3K)
这篇文章收集了一系列基础资源、课程和教程、编码游戏、书籍、播客、YouTube 频道、最佳实践等等。
用于创建、操作和研究复杂网络的结构、动力学和功能,适用于复杂网络的分析。(star 13.4K)
12、PythonFrameworks:Python 的各种框架汇总
这个项目收录了 Python 中的各种框架,有 Web 框架、API 框架、CMS、ML&DL&AI、任务/消息队列、并行&分布式计算、工作流&管道、DevOps、爬虫、GUI&TUI,等等。提供有一个在线网站。
🐢播客&视频
由 Python 核心开发者 Pablo Galindo 和 Łukasz Langa 主理的播客,已推出两期节目:核心开发者 Sprint 及 Python 3.13.0 alpha 1、PEP-703:移除 GIL
上世纪 90 年代诞生的 Python、Ruby、PHP 和 JavaScript 这些动态编程语言都在拥抱静态类型(mypy、Sorbet、Hack 和 TypeScript),诞生不算久的 Go、Kotlin、Dart 和 Rust 等都是静态类型。为什么静态类型卷土重来?这对未来意味着什么?
3、《Boost your Git DX》作者的两期播客
Adam Johnson 新书《提升你的 Git 开发者体验》上市后,分别参加了Real Python Podcast #179 和 Pybites #139 两期播客节目。