跳转到主要内容

从实体书店获取书籍信息(ISBN或搜索)。

项目描述

网络爬取以获取书籍信息

这个库用于获取书籍信息。我们可以使用 关键词、使用 ISBN、使用 高级搜索 和进行 分页 来搜索。

我们从现有网站获取数据。我们爬取

我们获取:标题和作者,价格,出版社,封面等

从ods或csv文件导入数据

此库的另一个目标是轻松获取您在ods或csv文件中列出的大量书籍。

如果您的文件有“isbn”和“数量”列,则非常简单,我们将找到所有书籍信息。

如果它只有标题和出版社,则可行但容易出错。我们仍然可以这样做,但您之后需要进行库存盘点。

查看odsimport模块。它会返回JSON。您需要在数据库中添加您想要的内容(这在Abelujo中进行,请访问https://gitlab.com/vindarel/abelujo)。

可用,但仍在开发中。

接受的格式和列

我们可以读取ods和csv文件。

  • 包含“isbn”和“数量”列的文件,

  • 包含“标题”、“出版社”、“isbn”(在这种情况下为可选),“书架”、“发行商”、“数量”列的文件。没有“价格”列。“作者”是可选的(它可以帮助找到正确的书籍)。

如果文件没有标题,请使用“odsettings.py”配置文件(特别是,设置csv分隔符为“,”或“;”)。

为什么不选择亚马逊?

亚马逊扼杀了图书行业及其员工。但更重要的是,我们可以为我们的结果增加价值。我们可以在我们的应用程序内部链接到一个好书店,我们可以从它那里订购书籍,我们可以说明它是否有库存,等等。而且…我们在做这件事的过程中学到了很多!

从技术上来说,亚马逊API网络服务可能过于限制性,并不合适。必须注册亚马逊产品广告和AWS,并且请求速率限制为每秒1次。

为什么不选择谷歌图书?

数据非常少。

为什么不选择法国国家图书馆(BNF)?

因为,对于书店,我们需要最新的书籍(它们在BNF数据库中进入后几个月),需要最新信息。工具也很少。

安装

从pypi安装

pip install bookshops

使用

命令行

您可以在命令行上使用以下命令尝试此库:- livres:法语书籍 - libros:西班牙语书籍 - bucher:德语书籍 - 来要求更多:)

例如

livres antigone

livres 9782918059363

然后您会看到上面的截图。

选项:(这可能因爬虫而异,请使用-h) - -i--isbn 确保获取所有isbn。命令行工具默认不会获取它们,因为它们需要针对每本书进行另一个HTTP请求。这取决于网站。

作为库

但最重要的是,在您的程序内部

from bookshops.frFR.librairiedeparis.librairiedeparisScraper import Scraper as frenchScraper

scraper = frenchScraper("search keywords")
cards = scraper.search()
# we get a list of dictionnaries with the title, the authors, etc.

分页

我们进行分页。

scraper = frenchScraper("search keywords", PAGE=2)

开发和测试

请参阅http://dev.abelujo.cc/webscraping.html

开发模式

pip install -e .

现在您可以编辑项目并运行开发版本,就像库打算运行的那样,即使用entry_pointslivreslibros,等等。

doc: https://python-packaging-user-guide.readthedocs.org/en/latest/distributing/#working-in-development-mode

错误和不足

这是网络爬虫,所以它不会没有陷阱

  • 网站可能会关闭。这已经发生了。

  • 网站可能会更改,在这种情况下,我们可能需要更改我们的爬虫。这可以通过自动和频繁的测试提前捕获(正在进行中)。

变更日志

0.2.1

  • 德语爬虫:通过isbn搜索

0.2.0

  • 德语爬虫

  • 德语爬虫的进程池(从15秒到9秒)(见问题#1)

  • 为它添加了--isbn选项

0.1.x

  • 法语、西班牙语爬虫

  • 命令行工具

许可证

LGPLv3

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

bookshops-0.2.1.tar.gz (37.9 kB 查看哈希值)

支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面