LinkedIn Ads Scraper avatar

LinkedIn Ads Scraper

Try for free

1 day trial then $25.00/month - No credit card required now

Go to Store
LinkedIn Ads Scraper

LinkedIn Ads Scraper

silva95gustavo/linkedin-ad-library-scraper
Try for free

1 day trial then $25.00/month - No credit card required now

Extract ads of any format from LinkedIn Ad Library. Gain access to ad details, ad copy, media URL, call-to-action buttons and more. Dive deeper into the LinkedIn Ad Library for a competitive edge.

DE

no way to have a "complete" run

Open

Demand7 opened this issue
2 days ago

I started the actor. Initially I set it with no limits (time or records), because I didn't know what to expect and I wanted to stop it when I see that it reached a number of extracted data that I am happy with. But then I have no way to stop it and mark the run as "completed". I tried to resurrect it by adding time limit or record limits, but once started it ignores the limits and keep going. Do you have any suggestions on how to solve this issue? Consider that Clay does not accept the import of "aborted" runs and exporting as CSV and try to import the data there in this way also does not work because your actor generates CSV files with a number of columns too large for Clay to handle. Asking ChatGPT, it suggested o add an exit() function to the code, but I don't know how to do it from within Apify web interface.

silva95gustavo avatar

Hi,

Thank you for your message and detailed feedback. Let me address your concerns and suggest a few improvements to help resolve the issues you mentioned:

  1. Stopping Runs Gracefully:
    Have you tried using the resultsLimit parameter? This option allows you to define the maximum number of results per input URL. By setting a larger timeout and relying on this parameter, the run will automatically terminate once the specified limit is reached, marking it as completed rather than aborted.

  2. Memory Configuration:
    I noticed you set your run to use 32GB of memory. For similar tasks, using just 256MB can achieve almost identical execution speeds and significantly lower costs. This adjustment would make experimenting with different parameters much more economical.

  3. Limiting Output Columns:
    You can control the columns included in the output file by selecting the desired output fields. Please see the attached screenshot.

Let me know how these suggestions work for you or if you need further assistance.

IC

iachini

2 days ago

Thank you. Good tips Mb & Limiting columns.

But once the actor starts without limits, even resurrecting it adding limits, doesn't allow to complete the run, hence not be seen from Clay.

This is very disappointing.

I hope you can find a patch to this.

silva95gustavo avatar

After reviewing the log of events:

09:38:11 - Started run #1

09:48:11 - Manually aborted run #1 (1104 requests)

09:50:43 - Started run #2

09:50:51 - Run #2 aborted due to 10s timeout

10:02:46 - Start run #3

10:06:50 - Manually aborted run #3 (1435 requests)

10:21:02 - Start run #4

10:21:07 - Run #4 aborted due to 5s timeout

11:15:29 - Start run #5

11:15:30 - Run #5 aborted due to 3s timeout

16:41:14 - Start run #6

16:51:12 - Run #6 aborted due to 600s timeout (2579 requests)

17:45:25 - Start run #7

18:02:27 - Manually aborted run #7

Each execution progressively processed more requests, and timeout settings were applied as expected during each run and resurrection. Based on this, the system appears to have functioned correctly.

Could you please clarify the specific issue you're experiencing so I can better understand your concern?

Looking forward to your feedback.

IC

iachini

12 hours ago

I kept aborting and resurrecting because the run would never complete.

Initially I set no limits because I thought I could stop at any time by aborting the run. But then I realised that if no limits were set, even saving the actor with limits and resurrecting OR setting limits in the resurrection process, it never allows to complete the task.

Therefore the only way to move data from Apify to Clay is only via manual transfer because Clay won’t see a run which is aborted and not completed.

I am not sure if it is possible, but it would be helpful to set some exit in the code, so that people who did not set initial limits are still able to complete the run.

I hope this helps.

silva95gustavo avatar

It's not possible to change resultsLimit when ressurrecting a run. You can only change the timeout and memory settings when resurrecting, and this is a limitation imposed by Apify. I would recommend lowering the memory setting to 256MB or 512MB and starting a new run with resultsLimit defined.

Developer
Maintained by Community

Actor Metrics

  • 103 monthly users

  • 17 stars

  • >99% runs succeeded

  • 19 hours response time

  • Created in Oct 2023

  • Modified 10 hours ago