在linkedin高级搜索页面上创建自动连接

问题描述:

我正在寻找一种自动与通过LinkedIn高级搜索功能找到的人建立联系的方法. 您可能认识的人"页面上有很多有关此操作的信息,但是我只能在下面找到可以在高级搜索页面上使用的代码,但没有.有什么想法吗?

I'm looking for a way to auto connect to people found via the LinkedIn advanced search function. There's plenty of information on doing this from the 'people you may know' page but I can only find the code below that is meant to work on the advanced search page, but doesn't. Any ideas?

setInterval(function () {var x = $(‘.primary-action-button’);for (var i = 0; i < x.length; i++){if(x[i].innerHTML == "Connect") {x[i].click()}}var y = $(‘a.page-link’);y[y.length — 1].click();}, 1000)

Linkedin自动邀请(添加)脚本类(JS)

用于在Linkedin自定义搜索中与其他人联系1-3rd

您好,开发人员,您好吗?

Hello developers, how are you?

我落后于Chrome或Firefox的插件,该插件执行了此类操作,但是我只发现了无用或已停产的代码.

I went behind a plugin for Chrome or Firefox that did this type of action, however I only found useless or discontinued codes.

因此,我决定创建自己的代码来完成此自动化工作,并分页并添加自动注释.

So I decided to create my own code to do this automated work, with paging and adding automatic notes.

如果您正在阅读此评论,则发布日期为2019.06.05.该代码旨在与Linkedin的当前版本兼容,但是随着商务社交网络的设计/结构发生变化,可能需要对其进行更新.

If you are reading this comment, the date release is 2019.06.05. The code was built to be compatible with the current version of Linkedin, but there may be a need to update as the business social network is being changed in its design / structure.

如何使用?

简单,打开Linkedin,按公司,服务或所需部门进行搜索.在Google Chrome浏览器中按F12键,在开发者控制台中粘贴代码,然后按Enter.

Simple, open your Linkedin, make a search by company, service or sector desired. Press the F12 key in Google Chrome, in the developer console paste the code and press enter.

PS:请不要忘记在Linkedin(脚本)类中更改自定义注释消息.

PS: Do not forget to change the custom note message in the Linkedin (script) class.

Linkedin上的搜索屏幕

(Linkedin = {
    release: '1.0.5 stable',
    data: {},
    config: {
        autoStart: true,
        inspectorSpeed: 5000,
        sendSpeed: 4000,
        pagerSpeed: 10000,
        scrollDownAuto: 600,
        debug: true,
        message: 'Your custom note message (max 300 length)'
    },
    setEvents: function () {
        this.debug('set events');
    },
    debug: function (a) {
        if (this.config.debug && typeof console === 'object') {
            console.log(a)
        }
    },
    init: function () {
        this.debug('start script');
        this.setDefaults();
        this.setEvents();
        if (this.config.autoStart) {
            this.inspect();
        }
    },
    complete: function () {
        this.debug('script complete');
    },
    sleep: function (a) {
        this.setScroll();
        var start = new Date().getTime();
        for (var i = 0; i < 1e7; i++) {
            if ((new Date().getTime() - start) > a) {
                break;
            }
        }
    },
    totalRows: function () {
        return $('.search-result').length;
    },
    compile: function () {
        this.data.pageButtons = $("button.search-result__action-button").filter(function () {
            return $.trim($(this).text()) === "Connect";
        });
        this.data.pageButtonTotal = this.data.pageButtons.length;
    },
    stop: function () {
        clearInterval(Linkedin.data.pageInterval);
        clearInterval(Linkedin.data.nextInterval);
    },
    setDefaults: function () {
        this.stop();
        this.data = {
            pageInterval: null,
            nextInterval: null,
            pageIndex: (this.data.pageIndex) ? this.data.pageIndex : 1,
            pageButtons: {},
            pageButtonIndex: 0,
            pageButtonTotal: 0,
            lockInpect: false,
            lockClick: false
        };
    },
    sendInvites: function () {
        this.compile();
        this.setScroll();
        this.debug('validing');

        if (this.data.pageButtonTotal === 0 || this.data.lockInpect === true) {

            this.sleep(this.config.sendSpeed);

            return this.nextPage();
        }

        this.sleep(this.data.speed);
        this.debug('sending invite ' + (this.data.pageButtonIndex + 1) + '/' + this.data.pageButtonTotal);

        var button = this.data.pageButtons[this.data.pageButtonIndex];

        this.debug('clicking connect');
        $(button).click();
        this.sleep(Linkedin.config.sendSpeed);

        this.debug('adding a note');
        $("button:contains('Add a note')").click();
        this.sleep(Linkedin.config.sendSpeed);

        this.debug('write a note');
        var textArea = $('textarea[id="custom-message"]');
        textArea.val(this.config.message);
        this.sleep(Linkedin.config.sendSpeed);

        this.debug('send click');
        $("button:contains('Send invitation')").click();
        this.sleep(Linkedin.config.sendSpeed);

        this.debug('close window');
        $("button:contains('Cancel')").click();
        this.sleep(Linkedin.config.sendSpeed);

        this.debug('ignore confirm mail');
        if ($('[id=email]').length) {
            $('.send-invite__cancel-btn').click();
        }

        this.sleep(Linkedin.config.sendSpeed);
        this.stop();

        if (this.closeAll() && this.data.pageButtonIndex === (this.data.pageButtonTotal - 1)) {
            return this.nextPage();
        } else if (this.data.lockInpect === false && this.data.pageButtonIndex < (this.data.pageButtonTotal - 1)) {
            this.data.pageButtonIndex++;
            return this.sendInvites();
        } else {
            this.debug('waiting page overflow down');
            this.sleep(Linkedin.config.sendSpeed);
            return this.nextPage();
        }
    },
    nextPage: function () {
        Linkedin.debug('find page');
        Linkedin.setScroll();
        Linkedin.data.lockInpect = true;
        Linkedin.data.nextInterval = setInterval(function () {
            var pagerButton = $('.artdeco-pagination__button.artdeco-pagination__button--next[id^=ember]');
            Linkedin.debug('check page links...');
            if (pagerButton.length === 0) {
                return false;
            }
            if (Linkedin.data.lockClick === false) {
                Linkedin.debug('call next page (link)');
                Linkedin.data.lockClick = true;
                pagerButton.trigger('click');
            }
            Linkedin.checkRequest();
        }, Linkedin.config.pagerSpeed);
    },
    checkRequest: function () {
        var currentPageIndex = Linkedin.getURIParam('page');
        if (currentPageIndex !== Linkedin.data.pageIndex) {
            Linkedin.data.pageIndex = currentPageIndex;
            Linkedin.setDefaults();
            Linkedin.debug('page ready');
            return Linkedin.inspect();
        }
    },
    closeAll: function () {
        if ($('.send-invite__cancel-btn').length) {
            $('.send-invite__cancel-btn').click();
        }
        return (!$('.send-invite__cancel-btn:visible').length);
    },
    setScroll: function (a) {
        $('body').click();
        window.scrollTo(0, $(window).scrollTop() + ((a) ? a : Linkedin.config.scrollDownAuto));
    },
    inspect: function () {
        this.debug('inspect elements');
        this.data.pageInterval = setInterval(function () {
            Linkedin.setScroll(Linkedin.config.scrollDownAuto);
            if (Linkedin.totalRows() >= 20 && $('.artdeco-pagination__button.artdeco-pagination__button--next[id^=ember]').length) {
                clearInterval(Linkedin.data.pageInterval);
                Linkedin.sendInvites();
            } else {
                Linkedin.debug('listening..');
            }
        }, Linkedin.config.inspectorSpeed);
    },
    getURIParam: function (name) {
        name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
        var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
        var results = regex.exec(location.search);
        return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
    }
}).init();