scrape_apify.py

entry point
24 steps Apify cli: __main__ guard cli: argparse

This automation uses the Apify service to search for and collect specific information, such as business leads, based on your criteria. It then saves all the gathered details into a file for easy access.

Flow

Click any step to see details

graph TB
  subgraph n_scrape_apify_scrape_leads["scrape_leads()"]
    n_scrape_apify_22{"if not api_token"}:::decision
    n_scrape_apify_23(["Output: print()"]):::output
    n_scrape_apify_32[["Transform: int()"]]:::transform
    n_scrape_apify_35[["Transform: .lower()"]]:::transform
    n_scrape_apify_40{"if require_email"}:::decision
    n_scrape_apify_43(["Output: print()"]):::output
    n_scrape_apify_44(["Output: print()"]):::output
    n_scrape_apify_44[["Transform: .dumps()"]]:::transform
    n_scrape_apify_46{"try/except block"}:::decision
    n_scrape_apify_50(["Output: print()"]):::output
    n_scrape_apify_53{"if not run"}:::decision
    n_scrape_apify_54(["Output: print()"]):::output
    n_scrape_apify_57(["Output: print()"]):::output
    n_scrape_apify_61{"for item in client.dataset(run['defaultDatasetId']).itera..."}:::decision
    n_scrape_apify_62[["Transform: .append()"]]:::transform
    n_scrape_apify_22 --> n_scrape_apify_23
    n_scrape_apify_23 --> n_scrape_apify_32
    n_scrape_apify_32 --> n_scrape_apify_35
    n_scrape_apify_35 --> n_scrape_apify_40
    n_scrape_apify_40 --> n_scrape_apify_43
    n_scrape_apify_43 --> n_scrape_apify_44
    n_scrape_apify_44 --> n_scrape_apify_44
    n_scrape_apify_44 --> n_scrape_apify_46
    n_scrape_apify_46 --> n_scrape_apify_50
    n_scrape_apify_50 --> n_scrape_apify_53
    n_scrape_apify_53 --> n_scrape_apify_54
    n_scrape_apify_54 --> n_scrape_apify_57
    n_scrape_apify_57 --> n_scrape_apify_61
    n_scrape_apify_61 --> n_scrape_apify_62
  end
  subgraph n_scrape_apify_save_results["save_results()"]
    n_scrape_apify_70{"if not results"}:::decision
    n_scrape_apify_71(["Output: print()"]):::output
    n_scrape_apify_80[/"File: open()"/]:::fileio
    n_scrape_apify_81[/"File: json.dump()"/]:::fileio
    n_scrape_apify_83(["Output: print()"]):::output
    n_scrape_apify_70 --> n_scrape_apify_71
    n_scrape_apify_71 --> n_scrape_apify_80
    n_scrape_apify_80 --> n_scrape_apify_81
    n_scrape_apify_81 --> n_scrape_apify_83
  end
  subgraph n_scrape_apify_main["main()"]
    n_scrape_apify_101{"if results"}:::decision
    n_scrape_apify_102(["Output: print()"]):::output
    n_scrape_apify_102[["Transform: len()"]]:::transform
    n_scrape_apify_105(["Output: print()"]):::output
    n_scrape_apify_101 --> n_scrape_apify_102
    n_scrape_apify_102 --> n_scrape_apify_102
    n_scrape_apify_102 --> n_scrape_apify_105
  end
  click n_scrape_apify_22 call showStepDetail("scrape_apify.py", 22)
  click n_scrape_apify_23 call showStepDetail("scrape_apify.py", 23)
  click n_scrape_apify_32 call showStepDetail("scrape_apify.py", 32)
  click n_scrape_apify_35 call showStepDetail("scrape_apify.py", 35)
  click n_scrape_apify_40 call showStepDetail("scrape_apify.py", 40)
  click n_scrape_apify_43 call showStepDetail("scrape_apify.py", 43)
  click n_scrape_apify_44 call showStepDetail("scrape_apify.py", 44)
  click n_scrape_apify_44 call showStepDetail("scrape_apify.py", 44)
  click n_scrape_apify_46 call showStepDetail("scrape_apify.py", 46)
  click n_scrape_apify_50 call showStepDetail("scrape_apify.py", 50)
  click n_scrape_apify_53 call showStepDetail("scrape_apify.py", 53)
  click n_scrape_apify_54 call showStepDetail("scrape_apify.py", 54)
  click n_scrape_apify_57 call showStepDetail("scrape_apify.py", 57)
  click n_scrape_apify_61 call showStepDetail("scrape_apify.py", 61)
  click n_scrape_apify_62 call showStepDetail("scrape_apify.py", 62)
  click n_scrape_apify_70 call showStepDetail("scrape_apify.py", 70)
  click n_scrape_apify_71 call showStepDetail("scrape_apify.py", 71)
  click n_scrape_apify_80 call showStepDetail("scrape_apify.py", 80)
  click n_scrape_apify_81 call showStepDetail("scrape_apify.py", 81)
  click n_scrape_apify_83 call showStepDetail("scrape_apify.py", 83)
  click n_scrape_apify_101 call showStepDetail("scrape_apify.py", 101)
  click n_scrape_apify_102 call showStepDetail("scrape_apify.py", 102)
  click n_scrape_apify_102 call showStepDetail("scrape_apify.py", 102)
  click n_scrape_apify_105 call showStepDetail("scrape_apify.py", 105)
classDef api fill:#dbeafe,stroke:#2563eb,color:#1e3a5f
classDef fileio fill:#dcfce7,stroke:#16a34a,color:#14532d
classDef dbop fill:#f3e8ff,stroke:#9333ea,color:#3b0764
classDef decision fill:#ffedd5,stroke:#ea580c,color:#7c2d12
classDef output fill:#f3f4f6,stroke:#6b7280,color:#1f2937
classDef transform fill:#ccfbf1,stroke:#0d9488,color:#134e4a
classDef entry fill:#dcfce7,stroke:#16a34a,stroke-width:3px,color:#14532d
classDef compact fill:#f0f4ff,stroke:#6366f1,color:#312e81,stroke-width:2px
                    
API Call File I/O Database Decision Output Transform

All Steps

Step Detail

Select a step from the diagram or list to see its details.

Services

  • Apify (apify_client)

Secrets

  • APIFY_API_TOKEN

Imports

External

  • apify_client
  • argparse
  • datetime
  • dotenv
  • json
  • os
  • sys