fix: use DOM scraping for search results and fix assignee URL encoding#85
Merged
fix: use DOM scraping for search results and fix assignee URL encoding#85
Conversation
Split into lib + bin crate structure so core, cli, and mcp modules are available as a library for external crates. Also remove the incorrect `workspaces` parameter from Swatinem/rust-cache since this is a single crate, not a Cargo workspace. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace /xhr/query API calls with DOM scraping via extract_search_results.js, so search filters (assignee, country, etc.) are correctly applied - Fix assignee parameter: remove unnecessary quotes and use url::Url serializer instead of manual URL construction - Split mise run test into unit tests and e2e tests Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Exclude e2e tests which depend on browser/network and are flaky in CI. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use a fixed delay before DOM scraping to let search results render, instead of wait_for_element which may not find shadow DOM elements. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/xhr/queryAPI calls with DOM scraping viaextract_search_results.js, so search filters (assignee, country, etc.) are correctly applied by Google Patentsurl::Urlserializer instead of manual URL constructionmise run testinto unit tests (mise run test) and e2e tests (mise run test-e2e) to avoid flaky e2e failures blocking commitsMotivation
The
--assigneefilter was not working because:/xhr/queryAPI was called manually with incorrectly constructed URLs, ignoring the assignee parameter"Apple"→%22Apple%22), which Google Patents did not recognizeTest plan
mise run pre-commitpasses (unit tests, fmt, clippy)mise run test-e2epassescargo run -- search --assignee "Apple"returns Apple-related patents only🤖 Generated with Claude Code