Download Linkedin videos in bulk and save to Apify Key value store
Download multiple videos on public posts to Apify Key value store
https://www.linkedin.com/feed/update/
...https://www.linkedin.com/username/posts/
...https://www.linkedin.com/posts/
...If you need to pass custom data to the output, set the userData
object of the request in the startUrls
array and it will be appended to the output
1{ 2 "startUrls": [{ 3 "url": "https://www.linkedin.com/feed/update/...", 4 "userData": { 5 "userid": "6236572396729" 6 } 7 }] 8}
The generated output is the following:
1{ 2 "url": "https://www.linkedin.com/posts/apifytech_tech-cto-leadership-activity-6911945063627464704-LlVH", // original URL requested 3 "hash": "e74794b9", // the internal hash of the video, never changes between requests 4 "partsUrl": "https://api.apify.com/v2/key-value-stores/SOME_ID/records/e74794b9", // the URL to the Key Value store where the video parts are stored 5 "#error": false // hidden field if there was an error 6}
The video is chunked in parts of ~2MB each and saved to the Key Value store. To be able to download it, you'll need to download all the parts and concatenate them together. Here's a small example that can be used in the browser:
1const { appendFileSync } = require('node:fs'); 2 3async function main(datasetId) { 4 const items = await fetch(`https://api.apify.com/v2/datasets/${datasetId}/items?clean=true&format=json`).then((response) => response.json()); 5 6 const firstVideo = items[0].partsUrl; // partsUrl contains the location to the Key Value store 7 8 // get the parts from the Key value store 9 const { parts, length, contentType } = await fetch(firstVideo).then((response) => response.json()); 10 11 console.log({ parts, length, contentType }); 12 13 // wait for all parts to be downloaded 14 for (const url of parts) { 15 // download part using fetch 16 const downloaded = await fetch(url); 17 // get an arrayBuffer from the chunk 18 const arrayBuffer = new Uint8Array(await downloaded.arrayBuffer()); 19 20 console.log(`Downloaded ${arrayBuffer.byteLength} bytes from ${url}`); 21 22 // write downloaded chunk to file 23 appendFileSync('video.mp4', arrayBuffer); 24 } 25} 26 27main('YOUR_DATASET_ID');
Yes, if you're scraping publicly available data for personal or internal use. Always review Websute's Terms of Service before large-scale use or redistribution.
No. This is a no-code tool — just enter a job title, location, and run the scraper directly from your dashboard or Apify actor page.
It extracts job titles, companies, salaries (if available), descriptions, locations, and post dates. You can export all of it to Excel or JSON.
Yes, you can scrape multiple pages and refine by job title, location, keyword, or more depending on the input settings you use.
You can use the Try Now button on this page to go to the scraper. You’ll be guided to input a search term and get structured results. No setup needed!