波兰国家图书馆polona.pl网站的图片下载器
项目描述
PyPolona
PyPolona 是一个免费且开源的GUI(图形)应用程序,允许您在Polona.pl数字图书馆中搜索和下载图片。它还作为一个ppolona
CLI(命令行)工具使用。它也是一个可以从PyPI获取的Python包。源代码位于Github。
Polona.pl 提供了波兰国家图书馆及其合作机构收藏的数字化书籍、杂志、图形、地图、音乐、传单和手稿。
使用PyPolona,您可以
- 搜索Polona
- 将搜索结果打印或保存为URL列表、YAML文件、JSON文件以及Polona文档ID的简单列表
- 下载搜索结果中的所有或某些高分辨率图片,或下载提供的Polona文档ID列表中的图片
PyPolona的GUI版本是从命令行版本生成的,并使用与ppolona
工具相同的设置。
记住:首次在macOS上运行GUI时,请Ctrl+点击 DMG,选择打开,然后打开,然后将它拖到应用程序文件夹,在那里Ctrl+点击应用程序图标,选择打开,然后打开。
新增功能
当前版本是 1.6.0。
1.6.0
- 除非您指定
--no-text-pdf
,否则 PyPolona 现在会下载一个额外的具有可搜索文本的 PDF 文件(如果可用) --skip
现在是--no-overwrite
- 改进了 PDF 元数据导入,修复了错误
1.5.0
-i
将每个下载的文档保存为包含图片的子文件夹,否则保存为一个 PDF(包含元数据)- 使用
--skip
代替--overwrite
标志
1.0.0
- 初始发布
安装独立的 PyPolona 应用
下载 macOS 的 DMG 文件
在 macOS 上,Ctrl+点击 下载的 DMG 文件,选择 打开,然后再次 打开,然后将图标拖到 /Applications
文件夹。
当您 首次运行应用 时,Ctrl+点击 Polona.app,选择 打开,然后点击 打开。之后,您只需双击图标即可。如果应用没有运行,请再次双击。
下载 Windows 的 ZIP 文件
在 Windows 上,解压缩下载的 ZIP 文件,双击 setup_pypolona.exe
图标来安装应用。您需要 64 位 Windows。
在 macOS 或 Windows 上安装 pypolona Python 包
如果您有 Python 3.8+,可以使用 python3 -m pip install pypolona
安装 Python 版本。
使用图形 PyPolona 应用(GUI)
- 如果您在 macOS 上安装了独立应用,Ctrl-点击
/Applications/PyPolona.app
并选择 打开,然后选择 打开。下次您可以直接双击运行。 - 如果您在 Windows 上安装了独立应用,从开始菜单运行
PyPolona
。 - 如果您安装了 Python 版本,运行
ppolona
或python3 -m pypolona
搜索设置
在“输入”选项卡中
在 查询 中,您可以粘贴一个或多个来自 Polona.pl 的 URL(空格分隔)。
在 选择一个 中,您可以更改 查询 字段的意义
- 如果没有选择任何选项,查询将被解释为一个或多个来自 Polona.pl 的 URL
- 搜索:选择此选项,并在 查询 字段中输入一个简单的搜索查询,例如
adam mickiewicz
;转到 选项 选项卡来自定义 - 高级:您可以使用高级查询语法,请参阅 文档;转到 选项 选项卡来自定义
- ids:Polona 使用文档 ID,如果您已经知道它们,可以直接粘贴一个由空格分隔的 ID 列表
在“选项”选项卡中
-
在 空格分隔的语言 中,您可以输入一个由空格分隔的语言列表,例如 Polona 使用它们的方式,例如
polski niemiecki angielski
。使用 Polona 网站侧边栏来查找它们。 -
在 排序搜索 中,您可以根据分数、日期、标题或创作者对结果进行排序,升序或降序。
-
在 以格式输出搜索结果 中,您可以选择搜索结果将输出的格式。如果您选择 ids,请点击 重启,然后将其粘贴回查询字段。选择 urls 以获取可点击链接。
-
在 保存搜索结果 中,您可以可选地将搜索结果保存到文件。
下载设置
打开 下载找到的文档 以下载查询结果的全文。
-
打开 将 JPEGs 下载到子文件夹中 以将每个文档内容作为一系列 JPEGs 下载。在下载文件夹中,为每个文档创建一个子文件夹。子文件夹名称以出版年份开头,然后是标题的一部分,然后是 ID。如果您还下载可搜索的 PDF,将在子文件夹中保存一个带有
_text
后缀的附加 PDF。此外,子文件夹中还将保存一个包含一些元数据的 YAML 文件。 -
关闭 将 JPEGs 下载到子文件夹中,可以将每个文档内容下载为一个 PDF。应用程序不会创建子文件夹。PDF 名称以出版年份开头,然后是标题的一部分,然后是 ID。如果您还下载可搜索的 PDF,还会保存一个带有
_text
后缀的附加 PDF。
在“选项”选项卡中
-
在 将下载的文档保存在此文件夹中,您可以选择应用程序将文档下载到哪个文件夹。默认情况下,它使用您桌面的
polona
子文件夹。 -
在 下载最大页数 中,您可以限制应用程序为每个文档下载的最大页数。这对于测试下载很有用,因为一些文档可能有数百页。
-
对于某些文档,Polona 还有一个额外的低分辨率可搜索 PDF。默认情况下,该 PDF 也会下载并保存为
_text
后缀。打开 跳过下载可搜索 PDF 以不下载这些附加 PDF。 -
默认情况下,应用程序将重新下载并覆盖之前下载的文档。打开 跳过现有子文件夹/PDF 以跳过它们。
按钮
- 点击 开始 以开始搜索或下载。
- 点击 取消 以关闭应用程序。
- 如果您已经开始并且搜索或下载已完成,您可以使用
- 点击 重启 以使用相同的设置重新开始搜索或下载
- 点击 编辑 返回以更改设置,这样您就可以开始另一个搜索或下载。
- 如果下载正在运行,您可以点击 停止 以中断它。
使用 CLI
注意:CLI 是 ppolona
,而不是 pypolona
- 如果您在 macOS 上安装了独立的 DMG,请使用 CLI 通过
/Applications/PyPolona.app/Contents/MacOS/ppolona -h
- 如果您安装了 Python 版本,请运行
ppolona -h
或python3 -m pypolona -h
- 命令行选项
usage: ppolona [-h] [-S | -A | -I] [-D] [-i] [-l [language [language ...]]] [-s {score desc,date desc,date asc,title asc,creator asc}]
[-f {ids,urls,yaml,json}] [-o results_file] [-d download_folder] [-M num_pages] [-T] [-O]
query [query ...]
Search in and download from Polona.pl. GUI: Help › PyPolona 1.6.0 Help. CLI: ppolona -h
optional arguments:
-h, --help show this help message and exit
Input:
query query is a Polona.pl URL unless you choose search, advanced or ids
-S, --search Query is search query, see Options
-A, --advanced Query is advanced search query, see Documentation
-I, --ids Query is space-separated IDs
-D, --download Download found docs, see Options
-i, --images Download JPEGs into subfolders instead of PDF
Options:
-l [language [language ...]], --lang [language [language ...]]
Space-separated languages: polski angielski niemiecki...
-s {score desc,date desc,date asc,title asc,creator asc}, --sort {score desc,date desc,date asc,title asc,creator asc}
Sort search results by score, date, title or creator (descending or ascending)
-f {ids,urls,yaml,json}, --format {ids,urls,yaml,json}
Output search results in format
-o results_file, --output results_file
Save search results to this file
-d download_folder, --download-dir download_folder
Save downloaded docs in this folder
-M num_pages, --max-pages num_pages
Download max pages per doc (0: all)
-T, --no-text-pdf Skip downloading searchable PDFs
-O, --no-overwrite Skip existing subfolders/PDFs
更多关于 Polona 的信息
Polona 使用起来有些复杂,但幸运的是,Polona 发布了一个 JSON API。pypolona 包使用该 API。
- Polona — 主 Polona 网站
- Polona/API — pypolona 所使用的 JSON API
- Polona/blog — 博客
- Polona/typo — 一个有趣的迷你网站,让您可以使用来自随机出版物的字母排版单词
开发
- 此项目使用 Gooey。借助 Gooey,我可以将使用
argparse
模块的 Python 命令行应用程序快速转换为简单的 GUI 应用程序。该项目是一个很好的示例,说明了如何做到这一点。 - 此项目使用 PyInstaller 来构建独立的应用程序。
在 macOS 上构建
要构建 Python 包,请构建 Mac DMG 和 Win EXE(通过 Wine)
./macdeploy prep && ./macdeploy build
在 Windows 上构建
- 从 Python.org 安装 Python 3.8(不是 Windows 商店!)
- 安装 Inno Setup
pip3 install --user --upgrade .[dev]
python -m PyInstaller --distpath="app/build/dist-win" --workpath="app/build" -y "app/pyinstaller-win.spec"
"C:\Program Files (x86)\Inno Setup 6\ISCC.exe" /dMyAppVersion="1.1.7" app/pypolona.iss /Q
许可和版权
版权所有 © 2020 Adam Twardoch。根据 MIT 许可证 许可。本项目与 Polona 无关,也不受其支持。
<script async defer src="https://buttons.github.io/buttons.js"></script>项目详情
下载文件
下载您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。
源分发
构建分发
pypolona-1.6.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 169602526bb134fc4b808b32da49e50d890e120645d08e47c0ae245cd390f2b3 |
|
MD5 | a9bb3e0f33dccad285512eaa75c962f3 |
|
BLAKE2b-256 | a22dd078affd68db9495a6d6669e09d855fa390694cbbc57642fbc06e2b59273 |
pypolona-1.6.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 30d4c9f2567bd23a52d9f0ce1f00665dc3b8dbe9129943359e4651796e9a1a67 |
|
MD5 | 260088a878e3f0a2f57b291be03f1435 |
|
BLAKE2b-256 | 74f16366102b2382a673e77368833945ff2711411686d4df6413ec732aa89486 |