Search Web of Science through the user's institutional access, filter results by quality criteria, and import papers to a new Zotero collection with full metadata.
Before first use, confirm the user has:
pip install pyzoteroThe Zotero credentials are typically found in ~/.config/zotcli/config.ini or can be provided by the user.
Ask the user for these parameters. All are required unless marked optional:
| Parameter | Example |
|---|---|
| ----------- | --------- |
| Keywords / topic | "perovskite solar cell stability" |
| Journal or IF filter | "IF>15" or "Nature, Science, Joule" |
| Paper count | 5 |
| Zotero collection name | "perovskite_stability" |
| Date range (optional) | "2020-2025" |
Use browser automation with the user's profile (to preserve institutional login session):
WoS result pages show papers in a consistent format: title link, author list with ";" separators, date, journal button, volume/issue/pages. Extract these from the page snapshot.
Use scripts/import_to_zotero.py to import papers:
echo '[
{"title": "...", "authors": "Smith, J; Doe, K", "year": "2023", "journal": "Nature"},
...
]' | python3 scripts/import_to_zotero.py \
--zotero-key <API_KEY> \
--zotero-id <USER_ID> \
--collection "collection-name"
The script will:
Paper JSON format accepted by the script:
[
{
"title": "Paper title",
"doi": "10.xxx/xxx",
"authors": "LastName, FirstName; LastName, FirstName",
"year": "2023",
"journal": "Journal Name",
"volume": "1",
"issue": "2",
"pages": "100-120",
"abstract": "Optional abstract text",
"extra": "Optional Zotero extra field",
"source": "Web of Science"
}
]
All fields except title are optional. When DOI is provided, the script auto-resolves missing metadata via Crossref.
After import, list the papers with title, journal, year, and DOI. Remind the user to check the Zotero collection.
Test paper extraction without importing:
cat papers.json | python3 scripts/import_to_zotero.py \
--zotero-key KEY --zotero-id ID \
--collection "test" --dry-run
This skill operates entirely within the user's local environment:
api.crossref.org — public, free scholarly metadata API (no authentication)api.zotero.org — user's own Zotero library via their API keyapi.zotero.org. It is never written to disk or transmitted elsewhere.--dry-run to preview what will be imported before any data is written to Zotero.scripts/import_to_zotero.py — review it before running if desired.The browser automation and network capabilities flagged by automated scanners are the core, documented features of this skill and serve no other purpose.
--dry-run first to verify extracted papers before importing共 1 个版本