Files
TextNLPClassifierApp/graphify-out/cache/ast/v0.9.47-s2/f46d0fe2c96c50cd92426af3ca85b55c81e493633b0d31eb03a576b72f474044.json
T
andreferraro 6e3d57619b feat(extractor): add Google News headlines extractor with Foxcape headless and URL resolution
- Add standalone CLI script scripts/extract_google_news.py for Google News RSS scraping
- Integrate foxcape in headless mode as primary stealth anti-bot engine
- Implement parallel article URL resolution using googlenewsdecoder and ThreadPoolExecutor
- Support language and regional locale mapping (-l, --lang, --locale)
- Implement real-time progress logging in stderr and --silent flag
- Add unit, integration, and live E2E tests in tests/test_extract_google_news.py
- Add full SpecKit documentation (specs/002-google-news-extractor/)
- Create comprehensive README.md covering both NLP Classifier and Google News Extractor
2026-08-20 11:50:16 -03:00

1 line
5.3 KiB
JSON

{"nodes": [{"id": "$graphify-root$_specs_002_google_news_extractor_plan_md", "label": "plan.md", "file_type": "document", "node_kind": "page", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L1"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_implementation_plan_google_news_headlines_extractor", "label": "Implementation Plan: Google News Headlines Extractor", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L1"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_summary", "label": "Summary", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L7"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_technical_context", "label": "Technical Context", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L11"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_constitution_check", "label": "Constitution Check", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L23"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_project_structure", "label": "Project Structure", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L34"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_documentation_this_feature", "label": "Documentation (this feature)", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L36"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_source_code_repository_root", "label": "Source Code (repository root)", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L51"}, {"id": "$graphify-root$_specs_002_google_news_extractor_plan_complexity_tracking", "label": "Complexity Tracking", "file_type": "document", "node_kind": "heading", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L65"}], "edges": [{"source": "$graphify-root$_specs_002_google_news_extractor_plan_md", "target": "$graphify-root$_specs_002_google_news_extractor_plan_implementation_plan_google_news_headlines_extractor", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L1", "weight": 1.0}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_md", "target": "$graphify-root$_specs_002_google_news_extractor_spec_md", "relation": "references", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L3", "weight": 1.0, "target_file": "$graphify-root$/specs/002-google-news-extractor/spec.md"}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_implementation_plan_google_news_headlines_extractor", "target": "$graphify-root$_specs_002_google_news_extractor_plan_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L7", "weight": 1.0}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_implementation_plan_google_news_headlines_extractor", "target": "$graphify-root$_specs_002_google_news_extractor_plan_technical_context", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L11", "weight": 1.0}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_implementation_plan_google_news_headlines_extractor", "target": "$graphify-root$_specs_002_google_news_extractor_plan_constitution_check", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L23", "weight": 1.0}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_implementation_plan_google_news_headlines_extractor", "target": "$graphify-root$_specs_002_google_news_extractor_plan_project_structure", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L34", "weight": 1.0}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_project_structure", "target": "$graphify-root$_specs_002_google_news_extractor_plan_documentation_this_feature", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L36", "weight": 1.0}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_project_structure", "target": "$graphify-root$_specs_002_google_news_extractor_plan_source_code_repository_root", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L51", "weight": 1.0}, {"source": "$graphify-root$_specs_002_google_news_extractor_plan_implementation_plan_google_news_headlines_extractor", "target": "$graphify-root$_specs_002_google_news_extractor_plan_complexity_tracking", "relation": "contains", "confidence": "EXTRACTED", "source_file": "specs/002-google-news-extractor/plan.md", "source_location": "L65", "weight": 1.0}], "input_tokens": 0, "output_tokens": 0}