Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Module "util" has been externalized for browser compatibility. Cannot access "util.promisify" in client code

I am trying to scrape LinkedIn profile using this library: https://www.npmjs.com/package/@n-h-n/linkedin-profile-scraper. This is my code:

<script>
import { LinkedInProfileScraper } from '@matidiaz/linkedin-profile-scraper';
    import { onMount } from 'svelte';
    import { session } from '$app/stores';

    onMount(async () => {
        const token = session?.provider_token;
    console.log(token);
        const scraper = new LinkedInProfileScraper({
            sessionCookieValue: token,
            keepAlive: false
        });

        // Prepare the scraper
        // Loading it in memory
        await scraper.setup();

        const result = await scraper.run('https://www.linkedin.com/in/jvandenaardweg/');

        console.log(result);
    });
</script>

I am using sveltekit to get the information, can someone point out how to solve this problem, I am not finding much information online.

like image 390
equi Avatar asked Aug 31 '26 00:08

equi


1 Answers

Hi what worked for me was to fix the vite.config.ts to add resolve.alias options like this:

resolve: {  
    alias: {
        process: "process/browser",
        stream: "stream-browserify",
        zlib: "browserify-zlib",    
        util: "util/",
        '@': path.resolve(__dirname, './src'),
    }
}

where we actually resolve the alias of util and add to it 'util/'

like image 186
planet9 Avatar answered Sep 02 '26 13:09

planet9



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!