Reusable Python toolkit for LinkedIn lead collection, outreach automation, and lead analytics.
Project description
linkedin-autobot
linkedin-autobot is a Python SDK for LinkedIn lead generation workflows.
Created by Ayoub Ardem.
GitHub documentation and project page:
https://github.com/AyoubArdem/LinkedinAutomationBot
What It Does
- Collect LinkedIn profile data from a profile URL or a person name
- Return structured fields like title, location, about, and experience
- Send LinkedIn connection requests
- Analyze leads and recommend outreach strategies
Product Style
This package is designed to work well in a hosted-SDK model:
- users install the package from PyPI
- the package talks to a private backend
- the sensitive implementation can stay private
It can also be used locally for direct automation workflows.
Install
pip install linkedin-autobot
Optional extras:
pip install "linkedin-autobot[automation]"
pip install "linkedin-autobot[analytics]"
Public Imports
Main public imports:
from linkedin_autobot import (
AnalysisResult,
LeadAnalyticsEngine,
LinkedInAutobotClient,
LinkedInBot,
LinkedInCredentials,
LinkedInProfile,
)
API Reference
LinkedInAutobotClient
Hosted SDK client for calling your private backend.
Constructor:
LinkedInAutobotClient(
base_url: str | None = None,
api_key: str | None = None,
timeout: float = 30.0,
)
Methods:
collect_profile_by_name(name: str) -> LinkedInProfilecollect_profile_by_url(profile_url: str) -> LinkedInProfileanalyze_profile(profile: LinkedInProfile, prompt: str) -> AnalysisResultsend_connection_request(profile_url: str, message: str | None = None) -> bool
LinkedInBot
Local Playwright automation client.
Constructor:
LinkedInBot(credentials: LinkedInCredentials, headless: bool = False)
Methods:
login() -> Nonevisit_profile(profile_url: str) -> Nonefind_profile_url_by_name(name: str) -> strcollect_profile(profile_url: str) -> LinkedInProfilecollect_profile_by_name(name: str) -> LinkedInProfilesend_connection_request(profile_url: str, message: str | None = None) -> boolclose() -> None
LeadAnalyticsEngine
Local analysis engine.
Constructor:
LeadAnalyticsEngine(api_key: str | None = None, model: str = "gemini-1.5-pro")
Methods:
analyze(profile: LinkedInProfile, prompt: str) -> AnalysisResult
LinkedInCredentials
Input schema for local bot authentication.
Fields:
email: strpassword: str
LinkedInProfile
Structured lead/profile object returned by collection methods.
Fields:
profile_url: strfull_name: strtitle: strlocation: strabout: strexperience: strstatus: strmetadata: dict[str, str]
AnalysisResult
Structured analysis object returned by analytics methods.
Fields:
score: floatinsights_strategic: strrecommended_outreach_ways: strdecision_maker_level: strraw_response: str
Hosted SDK Example
from linkedin_autobot import LinkedInAutobotClient
client = LinkedInAutobotClient(
base_url="https://your-backend-domain.com",
api_key="your-api-key",
)
profile = client.collect_profile_by_name("Satya Nadella")
analysis = client.analyze_profile(
profile,
prompt="Score this lead and recommend outreach.",
)
print(profile.title)
print(analysis.score)
Local Example
from linkedin_autobot import LinkedInBot, LinkedInCredentials
credentials = LinkedInCredentials(
email="your_login@example.com",
password="your_password",
)
bot = LinkedInBot(credentials)
bot.login()
profile = bot.collect_profile_by_name("Satya Nadella")
bot.close()
print(profile.profile_url)
print(profile.title)
Main Features
- Hosted SDK client support
- Local Playwright automation support
- Structured lead profile schema
- Lead scoring and analytics support
- API-key friendly backend integration
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file linkedin_autobot-0.1.4.tar.gz.
File metadata
- Download URL: linkedin_autobot-0.1.4.tar.gz
- Upload date:
- Size: 14.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f7421993cc42686a4bb92b320a1f95dd1332b995b97268287d547525c367141
|
|
| MD5 |
a98d27a23e45a63f1376e61ba0f3d6a3
|
|
| BLAKE2b-256 |
da3dd590147e1736f2ca298f0749092f7498d3c42125cbcf6f274f9c0180247d
|
File details
Details for the file linkedin_autobot-0.1.4-py3-none-any.whl.
File metadata
- Download URL: linkedin_autobot-0.1.4-py3-none-any.whl
- Upload date:
- Size: 13.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6a9d372d0bd769f16ccce789c96136d7a26f7139d869ccefe4c4d0999dfcee1
|
|
| MD5 |
6104db162ba179cc691b375dbb25692d
|
|
| BLAKE2b-256 |
b8360ed0986cfb2a5a2065eb38f26ee0c18e1612121f18c0ecd443bee9c5a23a
|