Comments (5)
Thanks! I will consider your suggestion in a further version.
from isbnlib.
Meanwhile, I suggest you use goom("your words")[0]['ISBN-13']
.
By the way, probably this is much better than a general search!
from isbnlib.
I tried using goom
as suggested and it seems to work quite well, however, sometimes piping the returned isbn to meta
fails. For example:
# goom returns correct isbn 9788579308529
>>> isbn=goom("Manual de persuasão do FBI Karlins, Marvin; Shafer, Jack ")[0]['ISBN-13']
>>> meta(isbn)
{}
I realise I can just use the metadata from goom(...)[0]
in this instance but why does meta()
return an empty map, given both functions call the same gbooks endpoint? 😕 Am I missing something?
from isbnlib.
Despite being the same service, the calls are different and different database indexes are used to select the relevant items for each call (this is the usual procedure!). And since these databases are not in a completely consistent state, you get inconsistent results!
You can test this by enter in your browser:
- https://www.googleapis.com/books/v1/volumes?q=Manual%20de%20persuasão%20do%20FBI%20Karlins&fields=items/volumeInfo(title,authors,publisher,publishedDate,language,industryIdentifiers)&maxResults=10
- https://www.googleapis.com/books/v1/volumes?q=isbn:9788579308529&fields=items/volumeInfo(title,subtitle,authors,publisher,publishedDate,language,industryIdentifiers)&maxResults=1
from isbnlib.
It's strange that the same endpoint can return different data based on which query params are used but this is clearly an inconsistency on google books api, rather than isbnlib.
My original issue has been resolved by using goom
so feel free to close this. I still think providing the API key to isbn_from_words()
could be a nice improvement for the future though. 👍
from isbnlib.
Related Issues (20)
- [Enhancement] `meta` be able to ignore ISBNNotConsistentError HOT 3
- Add a network pytest mark for tests that use the network HOT 1
- error when using meta(isbn, service='openl') HOT 1
- Books in your language
- Basic Template
- If source returns Unimarc
- If source returns xml from SRU protocol
- Instructions for release
- Dutch Books
- French books
- Portuguese books
- Spanish books
- Italian books
- German books
- Wikipedia provider
- Library of Congress (US)
- Metadata function 'classify' doesn't work
- ISBNNotConsistentError
- `mask` returns invalid result for ISBN with 0 idx
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from isbnlib.