CrossLinked is a LinkedIn enumeration tool that uses search engine scraping to collect valid employee names from an organization. This technique provides accurate results without the use of API keys, credentials, or accessing LinkedIn directly!

In the latest version CrossLinked now includes a names.csv output file, which stores all scraping data including: first name, last name, job title, and url. This can be ingested and parsed to reformat user accounts as needed.


CrossLinked assumes the organization’s account naming convention has already been identified. This is required for execution and should be added to the CMD args based on your expected output. See the Naming Format and Example Usage sections.


git clone

Install requirements

python3 -m pip install -r requirements.txt


python3 [OPTIONS]


positional arguments:
  company_name        Target company name

  -h, --help          show this help message and exit
  -t TIMEOUT          Max timeout per search (Default=15)
  -j JITTER           Jitter between requests (Default=1)

Search arguments:
  --search ENGINE     Search Engine (Default='google,bing')

Output arguments:
  -f NFORMAT          Format names, ex: 'domain\{f}{last}', '{first}.{last}'
  -o OUTFILE          Change name of output file (omit_extension)

Proxy arguments:
  --proxy PROXY       Proxy requests (IP:Port)
  --proxy-file PROXY  Load proxies from file for rotation


$ python3 -f '{first}.{last}'
[*] Searching google for valid employee names at
[*] 0 :""&num=100&start=0
[*] 94 :""&num=100&start=114
[*] 170 :""&num=100&start=229
[*] 224 :""&num=100&start=330
[*] Searching bing for valid employee names at
[*] 0 :""&first=0
[*] 7 :""&first=24
[*] 16 :""&first=49
[*] 23 :""&first=74
[*] 32 :""&first=98
[*] 41 :""&first=123
[*] 51 :""&first=148
[*] 60 :""&first=173
[*] 69 :""&first=198
[*] 78 :""&first=224
[*] 88 :""&first=249
[*] 97 :""&first=284
[*] 101 :""&first=307
[*] 104 :""&first=341
[+] names.txt complete, 266 unique names found!

URL List