Last active
December 19, 2020 16:54
-
-
Save maksii/e028dc8de7d42f12305911e53679d807 to your computer and use it in GitHub Desktop.
Script to automatically add connections from "People You May Know" page
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var inviter = {} || inviter; | |
inviter.userList = []; | |
inviter.className = 'button-secondary-small'; | |
inviter.refresh = function () { | |
window.scrollTo(0, document.body.scrollHeight); | |
window.scrollTo(document.body.scrollHeight, 0); | |
window.scrollTo(0, document.body.scrollHeight); | |
}; | |
inviter.initiate = function() | |
{ | |
inviter.refresh(); | |
var connectBtns = document.getElementsByClassName(inviter.className); | |
if (connectBtns == null) {var connectBtns = inviter.initiate();} | |
return connectBtns; | |
}; | |
inviter.invite = function () { | |
var connectBtns = inviter.initiate(); | |
var buttonLength = connectBtns.length; | |
for (var i = 0; i < buttonLength; i++) { | |
if (connectBtns != null && connectBtns[i] != null) {inviter.handleRepeat(connectBtns[i]);} | |
if (i == buttonLength - 1) { | |
console.log("done: " + i); | |
inviter.refresh(); | |
} | |
} | |
}; | |
inviter.handleRepeat = function(button) | |
{ | |
var nameValue = button.children[1].textContent | |
var name = nameValue.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); | |
if(inviter.arrayContains(name)) | |
{ | |
console.log("cancel"); | |
var cancel = button.parentNode.parentNode.children[0]; | |
cancel.click(); | |
} | |
else | |
{ | |
console.log("add"); | |
inviter.userList.push(name); | |
button.click(); | |
} | |
}; | |
inviter.arrayContains = function(item) | |
{ | |
return (inviter.userList.indexOf(item) > -1); | |
}; | |
inviter.usersJson = {}; | |
inviter.loadResult = function() | |
{ | |
var retrievedObject = localStorage.getItem('inviterList'); | |
var temp = JSON.stringify(retrievedObject); | |
inviter.userList = JSON.parse(temp); | |
}; | |
inviter.saveResult = function() | |
{ | |
inviter.usersJson = JSON.stringify(inviter.userList); | |
localStorage.setItem('inviterList', inviter.usersJson); | |
}; | |
setInterval(function () { inviter.invite(); }, 5000); |
@miguelmota your script is amazing in the numbers but can you make one with a selection of keywords ?
obrigado
Looks like LinkedIn changed something over the last couple of weeks and the scripts on this page, except the one from @miguelmota, do not seem to work anymore and that one doesn't let you select keywords. I hope that someone who knows this script well can fix this. Thanks, guys!
Looks like LinkedIn changed something over the last couple of weeks and the scripts on this page, except the one from @miguelmota, do not seem to work anymore and that one doesn't let you select keywords. I hope that someone who knows this script well can fix this. Thanks, guys!
Try using this script.
Hello developers, see this script solution.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I have tried the original code by the author and it worked well for me. Then I wanted to make sure that this script adds only the people who have "CEO" word in the profile headline. Then I have tried the solutions mentioned above in the comment and non of them work. So I have modified the original code to archive me goal. ( Add the strings(lowercase) you want to be existed in the headline to the "setOfStrings" variable - line 6 )