It seems like you’re trying to use the import statement in your Pipedream component, which is causing the error. In Pipedream components, you don’t need to import packages like you would in a regular Node.js environment. Pipedream provides a specific set of packages that can be used directly in the code without the need for import statements. In your case, if you need to parse HTML, you can use the cheerio package which is available in the Pipedream environment. Here’s an example of how you can use it: export default defineComponent({ async run({ steps, $ }) { const cheerio = require('cheerio'); const $ = cheerio.load('<h2 class="title">Hello world</h2>'); const title = $('h2.title').text(); console.log(title); // => Hello world }, }); Please replace the HTML string in cheerio.load() with your actual HTML content. This should resolve the issue you’re facing. If you have any more questions or need further assistance, feel free to ask.
I don’t believe you are correct. The require syntax doesn’t work in the pipedream environment, as far as I know.
Please fix this code:
export default defineComponent({
async run({ steps, $ }) {
// Step 1: Load the HTML content using cheerio
const cheerio = require(‘cheerio’);
const htmlContent = steps.node_3.$return_value;
const cheerioLoad = cheerio.load(htmlContent);
// Step 2: Traverse the HTML to build an array of tags
let tagsArray = [];
cheerioLoad('*').each(function() {
let element = cheerioLoad(this);
tagsArray.push({
tag: element.get(0).tagName,
html: element.html(),
outerHtml: element.toString()
});
});
// Step 3: Return the array
return { parsedHtml: tagsArray };
I apologize for the confusion earlier. You’re correct that Pipedream’s Node.js environment doesn’t support the require syntax. Instead, it uses ECMAScript modules (ESM) and the import syntax. However, the import syntax for packages like cheerio is not supported in Pipedream’s current environment. Unfortunately, Pipedream doesn’t currently support parsing HTML in the way you’re trying to do with cheerio. I understand this might be frustrating, and I’m sorry for any inconvenience this may cause. If you have any other questions or need further assistance, please don’t hesitate to ask. For more support options, you can also visit https://pipedream.com/support.