v2.9.15

spider-rs/spiderv2.9.15Oct 9, 2024by j-mendez

AI Summary

Adds new data extraction methods (XPath) and output formats (XML) for web scraping transformations.

Key Highlights

  • Add XPath data extraction support
  • Add XML return format
  • Add root selector across formats

New Features

  • Add XPath extraction support
  • Add XML return format

Full Release Notes

# Whats Changed

* add XPath data extraction support `spider_utils`
* add XML return format for `spider_transformations`
* chore(transformations): add root selector across formats #219
Example getting data via xpath.

```rust
    let map = QueryCSSMap::from([(
        "list",
        QueryCSSSelectSet::from(["//*[@class='list']"]),
    )]);
    let data = css_query_select_map_streamed(
        r#"<html><body><ul class="list"><li>Test</li></ul></body></html>"#,
        &build_selectors(map),
    )
    .await;

    assert!(!data.is_empty(), "Xpath extraction failed");
```

**Full Changelog**: https://github.com/spider-rs/spider/compare/v2.8.28...v2.9.15