This project is not covered by Drupal’s security advisory policy.
A set of extensible parsers for Feeds.
Provided parsers
- XPath XML & HTML
- JSONPath JSON & JSON lines parser *
- JMESPath JSON & JSON lines parser *
- QueryPath XML & HTML *
* Requires additional libraries or modules.
Proposed parsers
- QueryPath JSON parser
- If you have an idea for other parsers that would make sense in this module, create an issue.
Dependencies
Some parsers require additional libraries or modules.
Parser(s) | D9/D10 requirements | D7 requirements |
---|---|---|
XPath XML & HTML | none | none |
JSONPath JSON & JSON lines parser |
|
|
JMESPath JSON & JSON lines parser |
|
|
QueryPath XML & HTML |
|
Installation (D8+)
With composer
If you install this module through Composer, all required libraries will be automatically downloaded.
Without composer
If you can't use Composer for whatever reason, the libraries required by this module can also be installed with the Ludwig module. Install that module and then go to /admin/reports/packages for further instructions.
Installation (D7)
JSONPath
To use the JSONPath parser, you'll need PHP >= 5.4.
There are two ways to install it:
-
Without composer:
- Download and enable the modules "Libraries API" and "X Autoload".
- Download and unpack https://github.com/FlowCommunications/JSONPath/archive/0.5.0.tar.gz and place the contents of JSONPath-0.5.0 in sites/all/libraries/jsonpath.
- Clear all caches.
-
With composer, in sites/all/libraries:
$ git clone https://github.com/FlowCommunications/JSONPath.git jsonpath $ cd jsonpath $ composer install --no-dev $ drush cc all # Or just clear the cache however you normally would.
See the JSONPath expression tester.
JMESPath
The library for the JMESPath parsers can only be installed with Composer and requires PHP >= 5.4.
In sites/all/libraries
:
$ git clone https://github.com/mtdowling/jmespath.php.git
$ cd jmespath.php
$ composer install --no-dev
$ drush cc all # Or just clear the cache however you normally would.
Check out http://jmespath.org for documentation and an expression tester.
QueryPath
To use the QueryPath parsers, download and enable the QueryPath module.
Development
To run tests of the D7 version locally, the TUnit module is required.
One of the goals of this module is to allow other developers to easily create certain types of parsers. For example, it should be trivial to create a parser for a specific XML format.
Documention has been started, but still needs work.
History
This is the new home for:
The above modules are all in various states of maintenance. This project is meant to combine them so that they can benefit from each other's development and simplify maintenance. There are also some major architectural changes.
There is no upgrade path for the old modules. It remains on the table, but those modules should continue to work. See #2376645: Please mark all old project as deprecated and provide an upgrade path
Project information
- Seeking co-maintainer(s)
Maintainers are looking for help reviewing issues. - Module categories: Content Editing Experience, Developer Tools, Import and Export
- Ecosystem: Feeds
- 15,844 sites report using this module
- Created by twistor on , updated
- This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.
Releases
Development version: 8.x-1.x-dev updated 26 May 2023 at 09:07 UTC
Development version: 7.x-1.x-dev updated 26 Oct 2023 at 11:54 UTC