Bug
The bot can't send any connection requests. It loops on "Connect button not found" for every profile, then disqualifies them after 3 attempts.
What happens
- Bot navigates to a profile page
status.py correctly detects the "Connect" text on the page → returns QUALIFIED
connect.py tries to click the button using button[aria-label*="Invite"][aria-label*="to connect"]:visible → no match
- Fallback
_connect_via_more() tries div[role="button"][aria-label^="Invite"][aria-label*=" to connect"] → no match either
- After 3 failed attempts → lead is marked as FAILED/Unreachable
Stats from our DB
- 662 "Connect button not found" errors
- 592 deals marked Failed
- Essentially zero successful connection requests
Root cause (likely)
LinkedIn changed the aria-label on the Connect button. The current selectors expect "Invite X to connect" but LinkedIn no longer uses that format. The text "Connect" is visible on the page (detected by status.py via inner_text()), but the aria-label attribute no longer matches the CSS selectors in connect.py.
Affected selectors in linkedin/actions/connect.py
SELECTORS = {
"invite_to_connect": 'button[aria-label*="Invite"][aria-label*="to connect"]:visible',
"connect_option": 'div[role="button"][aria-label^="Invite"][aria-label*=" to connect"]',
}
Environment
- Image:
ghcr.io/eracle/openoutreach:latest
- Platform: macOS (Docker)
Bug
The bot can't send any connection requests. It loops on "Connect button not found" for every profile, then disqualifies them after 3 attempts.
What happens
status.pycorrectly detects the "Connect" text on the page → returnsQUALIFIEDconnect.pytries to click the button usingbutton[aria-label*="Invite"][aria-label*="to connect"]:visible→ no match_connect_via_more()triesdiv[role="button"][aria-label^="Invite"][aria-label*=" to connect"]→ no match eitherStats from our DB
Root cause (likely)
LinkedIn changed the
aria-labelon the Connect button. The current selectors expect"Invite X to connect"but LinkedIn no longer uses that format. The text "Connect" is visible on the page (detected bystatus.pyviainner_text()), but thearia-labelattribute no longer matches the CSS selectors inconnect.py.Affected selectors in
linkedin/actions/connect.pyEnvironment
ghcr.io/eracle/openoutreach:latest