Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/l4rm4nd/xingdumper
Python 3 script to dump/scrape/extract company employees from XING API
https://github.com/l4rm4nd/xingdumper
crawling employees osint profile python reconnaissance spider xing xing-api
Last synced: about 1 month ago
JSON representation
Python 3 script to dump/scrape/extract company employees from XING API
- Host: GitHub
- URL: https://github.com/l4rm4nd/xingdumper
- Owner: l4rm4nd
- Created: 2021-11-12T23:30:00.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-07-30T09:33:26.000Z (5 months ago)
- Last Synced: 2024-07-30T12:45:38.530Z (5 months ago)
- Topics: crawling, employees, osint, profile, python, reconnaissance, spider, xing, xing-api
- Language: Python
- Homepage: https://hub.docker.com/r/l4rm4nd/xingdumper
- Size: 126 KB
- Stars: 34
- Watchers: 3
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
## 💬 Description
XingDumper is a Python 3 script that dumps employee data from the XING social networking platform.
The results contain firstname, lastname, position, gender, location and a user's profile link. Only 2 API calls are required to retrieve all employees. With the `--email-format` CLI flag one can define a Python string format to auto generate email addresses based on the retrieved first and last name.
## ✨ Requirements
XingDumper talks with the unofficial XING API, which requires authentication. Therefore, you must have a valid XING user account. To keep it simple, XingDumper just expects a cookie value provided by you. Doing it this way, even 2FA protected accounts are supported. Furthermore, you are tasked to provide a XING company URL to dump employees from.
#### Retrieving XING Cookie
1. Sign into www.xing.com and retrieve your ``login`` cookie value e.g. via developer tools
2. Specify your cookie value either in the python script's variable ``LOGIN_COOKIE`` or temporarily during runtime via the CLI flag ``--cookie``#### Retrieving XING Company URL
1. Search your target company on Google Search or directly on XING
2. The Xing company URL should look something like this: https://www.xing.com/pages/appleretaildeutschlandgmbh## 🎓 Usage
````
usage: xingdumper.py [-h] --url [--count ] [--cookie ] [--full] [--quiet] [--email-format EMAIL_FORMAT]options:
-h, --help show this help message and exit
--url A XING company url - https://xing.com/pages/
--count Amount of employees to extract - max. 2999
--cookie XING 'login' cookie for authentication
--full Dump additional contact details (slow) - email, phone, fax, mobile
--quiet Show employee results only
--email-format Python string format for emails; for example:
--email-format '{0}.{1}@example.com' --> [email protected]
--email-format '{0[0]}.{1}@example.com' --> [email protected]
--email-format '{1}@example.com' --> [email protected]
--email-format '{0}@example.com' --> [email protected]
--email-format '{0[0]}{1[0]}@example.com' --> [email protected]
````### 🐳 Example 1 - Docker Run
````
docker run --rm l4rm4nd/xingdumper:latest --url https://www.xing.com/pages/audiag --cookie '' --email-format '{0}.{1}@apple.de'
````### 🐍 Example 2 - Native Python
````
# install dependencies
pip install -r requirements.txtpython3 xingdumper.py --url https://www.xing.com/pages/audiag --cookie '' --email-format '{0}.{1}@apple.de'
````## 💎 Outputs
The script will return employee data as semi-colon separated values (like CSV):
````
▒██ ██▒ ██▓ ███▄ █ ▄████ ▓█████▄ █ ██ ███▄ ▄███▓ ██▓███ ▓█████ ██▀███
▒▒ █ █ ▒░▓██▒ ██ ▀█ █ ██▒ ▀█▒▒██▀ ██▌ ██ ▓██▒▓██▒▀█▀ ██▒▓██░ ██▒▓█ ▀ ▓██ ▒ ██▒
░░ █ ░▒██▒▓██ ▀█ ██▒▒██░▄▄▄░░██ █▌▓██ ▒██░▓██ ▓██░▓██░ ██▓▒▒███ ▓██ ░▄█ ▒
░ █ █ ▒ ░██░▓██▒ ▐▌██▒░▓█ ██▓░▓█▄ ▌▓▓█ ░██░▒██ ▒██ ▒██▄█▓▒ ▒▒▓█ ▄ ▒██▀▀█▄
▒██▒ ▒██▒░██░▒██░ ▓██░░▒▓███▀▒░▒████▓ ▒▒█████▓ ▒██▒ ░██▒▒██▒ ░ ░░▒████▒░██▓ ▒██▒
▒▒ ░ ░▓ ░░▓ ░ ▒░ ▒ ▒ ░▒ ▒ ▒▒▓ ▒ ░▒▓▒ ▒ ▒ ░ ▒░ ░ ░▒▓▒░ ░ ░░░ ▒░ ░░ ▒▓ ░▒▓░
░░ ░▒ ░ ▒ ░░ ░░ ░ ▒░ ░ ░ ░ ▒ ▒ ░░▒░ ░ ░ ░ ░ ░░▒ ░ ░ ░ ░ ░▒ ░ ▒░
░ ░ ▒ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░░░ ░ ░ ░ ░ ░░ ░ ░░ ░
░ ░ ░ ░ ░ ░ ░ ░ ░ ░ by LRVT[i] Company Name: Apple
[i] Company X-ID: 271572.8873b4
[i] Company Slug: appleretaildeutschlandgmbh
[i] Dumping Date: 24/12/2021 13:37:00
[i] Email Format: {0}.{1}@apple.deFirstname;Lastname;Email;Position;Gender;Location;E-Mail;Fax;Mobile;Phone;Profile
Mina;Abdallah;[email protected];RFIC Design Engineer;MALE;Unterhaching,Deutschland;None;None;None;None;https://www.xing.com/profile/Mina_Abdallah
Isma;Abdan;[email protected];Gabelstaplerfahrer;MALE;Huelva,Spanien;None;None;None;None;https://www.xing.com/profile/Isma_Abdan[i] Successfully crawled 2 Apple employees. Hurray ^_-
````## 💥 Limitations
Dumped contact details via `--full` are most often empty. Germans seem to take privacy very seriously.
Furthermore, the details may only be accessible if you already belong to the contact list of the crawled employee. Kinda unlikely, however, the default privacy settings of XING would allow a retrival, if the data is configured and the privacy settings not changed by the crawled employee.
## 🤖 Repo Statistics
![Alt](https://repobeats.axiom.co/api/embed/cb3bbff6ff44db8f1aa645d442c4889c9c697073.svg "Repobeats analytics image")