abigegg / lanark
格拉斯哥图书馆数据客户端
0.1.5
2020-11-16 01:41 UTC
Requires
- chrome-php/chrome: ^0.8.1
Requires (Dev)
- phpunit/phpunit: ^9
README
Lanark 是一个用于从格拉斯哥图书馆目录中获取数据的 PHP 库。
它使用无头 Chrome 爬取图书馆的 Arena 网站 (https://libcat.csglasgow.org/),并提供了一个非常简单的接口,以便编程方式使用。
要求
- PHP 7+
- Composer
- Chrome,已安装在服务器上 (查看 Chrome-PHP 文档)
使用
使用 Composer 安装
composer require abigegg/lanark
通过 ISBN 获取书籍
use ABigEgg\Lanark; $client = new Lanark\Client(); // grab an item by its ISBN $book = $client->getItemByISBN('9781787300521'); var_dump( $book ); // object(Lanark\Item)#21 (5) { // ["title"]=> // string(30) "Orwell on truth, George Orwell" // ["author"]=> // string(25) "Orwell, George, 1903-1950" // ["isbn"]=> // string(13) "9781787300521" // ["availability_count":protected]=> // NULL // ["year"]=> // string(4) "2017" // }
使用关键词搜索书籍
use ABigEgg\Lanark; $client = new Lanark\Client(); // search for some items by keyword $books = $client->search('hitchhikers guide'); var_dump( $books ); // array(10) { // [0]=> // object(ABigEgg\Lanark\Item)#148 (6) { // ["title"]=> // string(51) "The hitchhiker's guide to the Galaxy, Douglas Adams" // ["author"]=> // string(26) "Adams, Douglas, 1952-2001," // ["isbn"]=> // string(13) "9781509808311" // ["availability_count":protected]=> // NULL // ["year"]=> // string(4) "2016" // ["item_page_url"]=> // NULL // } // [1]=> // object(ABigEgg\Lanark\Item)#247 (6) { // ["title"]=> // string(52) "The hitch-hiker's guide to the Bible, Colin Sinclair" // ["author"]=> // string(15) "Sinclair, Colin" // ["isbn"]=> // string(13) "9781854248541" // ["availability_count":protected]=> // NULL // ["year"]=> // string(4) "2008" // ["item_page_url"]=> // NULL // } // } // ...
检查书籍是否可借(以及有多少副本)
use ABigEgg\Lanark; $client = new Lanark\Client(); $book = $client->getItemByISBN("9781787300521"); var_dump( $book->getAvailability() ); // int(2)
变更日志
[0.1.5] 2020年11月16日
- 添加了通过
$client->search( 'Keywords' )
的关键词搜索 - 实时获取可用信息,以避免不必要的请求
- 重构
[0.1.4] 2020年11月15日
- 用 Chrome driver 替换 Goutte,现在书籍可用信息工作正常了!
[0.1.0] 2020年11月14日
- 初始提交
计划中的功能
- 搜索
通过书名和作者(关键词)搜索- 通过出版年份搜索书籍
- 通过书籍类型搜索
- 书籍
显示书籍目前是否可借,以及来自哪个图书馆- 如果可用,从 Google Books 获取摘要和缩略图
- (如果认证)预定一本书以便借阅
- 借阅
- 使用格拉斯哥图书馆用户 ID 和 PIN 进行认证
- 获取您当前的预订单列表以及它们何时到期
许可
许可协议为 MIT 许可证