Extract Web Data on Scale
Emit new event when you add or modify a new row in a table. See the docs here
Emit new event when new rows are returned from a custom query. See the docs here
Emit new event when a new table is added to a database. See the docs here
ScrapeNinja API on Pipedream allows you to craft powerful serverless workflows for web scraping without the hassle of managing proxies or browsers. It's a tool that can extract data from websites, handling JavaScript rendering and anti-bot measures with ease. By integrating ScrapeNinja with Pipedream, you can automate data collection, collate and process the scraped data, and connect it to numerous other services for further analysis, alerting, or storage.
import { axios } from '@pipedream/platform';
export default defineComponent({
props: {
scrapeninja: {
type: "app",
app: "scrapeninja",
}
},
async run({steps, $}) {
return await axios($, {
method: 'POST',
url: 'https://scrapeninja.p.rapidapi.com/scrape',
headers: {
'content-type': 'application/json',
'X-RapidAPI-Key': this.scrapeninja.$auth.rapid_api_key,
'X-RapidAPI-Host': 'scrapeninja.p.rapidapi.com'
},
data: {
url:"https://news.ycombinator.com/"
}
})
},
})
The MySQL application on Pipedream enables direct interaction with your MySQL databases, allowing you to perform CRUD operations—create, read, update, delete—on your data with ease. You can leverage these capabilities to automate data synchronization, report generation, and event-based triggers that kick off workflows in other apps. With Pipedream's serverless platform, you can connect MySQL to hundreds of other services without managing infrastructure, crafting complex code, or handling authentication.
import mysql from '@pipedream/mysql';
export default defineComponent({
props: {
mysql,
},
async run({steps, $}) {
// Component source code:
// https://github.com/PipedreamHQ/pipedream/tree/master/components/mysql
const queryObj = {
sql: "SELECT NOW()",
values: [], // Ignored since query does not contain placeholders
};
return await this.mysql.executeQuery(queryObj);
},
});