Skip to content

feat: ACM Digital Library API SearchSource #555

@geritwagner

Description

@geritwagner

Description

Extend the colrev.acm_digital_library package by implementing search functionality for API searches. This involves scraping search results from the ACM Digital Library, and processing exported results.

Implementation Notes

  • Use the BeautifulSoup library to develop a scraper that navigates the ACM digital library search interface, fetching search results along with full-text links (if available). The scraper should be capable of running a search based on a given query, and export the search results. This may require navigating pages of search results.
  • Documentation should guide users on how to perform searches and load search results.
  • Implement unit tests simulating the retrieval process with a simple example. The colrev.crossref package provides an example for unit tests.
  • The packages docs page explains the steps of developing CoLRev packages.
  • The search-feed offers functionality for storing records.
  • CEP003 describes principles for SearchSources.
  • CEP002 describes the standard data schema for records.
  • The colrev.crossref package implements similar unit tests.

User Story

  1. The user initializes a CoLRev project using colrev init.
  2. He/she conducts a search operation with colrev search -a colrev.acm_digital_library, specifying search parameters relevant to their topic.
  3. The package retrieves records based on the parameters and saves them in the data/search directory of the project.
  4. When users run colrev load, the records from the search directory are added to the data/records.bib file, which integrates all search results in the project.
  5. When users run colrev search again, records are retrieved from the API, updating the existing records.

Useful Links

Expected Effort

2 months, 3-4 people.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgood first issueGood for newcomerssearch_sourceUpdates, fixes, and additions of SearchSources

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions