如何使用Python提取LinkedIn个人资料

您打算删掉LinkedIn吗?然后,您需要现在就来阅读我们关于LinkedIn抓取器和市场上最好的LinkedIn抓取器的文章-由抓取器专家编写,以节省不必要的时间,金钱和精力。

您是否想到过LinkedIn上公开可用的数据量?如果没有,我要告诉你一个事实,LinkedIn拥有企业和研究人员都感兴趣的大量宝贵数据。LinkedIn是专业人士和企业的社交网站。您不仅可以找到公司和企业的个人资料信息,还可以动手了解他们雇员的个人资料详细信息。LinkedIn还是一个巨大的职位发布和托管平台–可以免费找到许多与职位相关的数据。公司和业务专业人员的个人资料及其关联的生成内容是一些令人感兴趣的数据。

但是,人们对可公开获得的数据感兴趣并不意味着他们可以轻松获得它。LinkedIn并没有提供非常全面的API,该API允许数据分析人员访问他们所需的数据。如果您必须访问大量数据,唯一可用的免费选项是使用被称为LinkedIn Scraper的自动化机器人抓取LinkedIn网页。但是,LinkedIn是否支持一般使用自动化机器人甚至进行网页抓取?尝试在LinkedIn上刮擦公开可用数据有多容易?那里最好的LinkedIn抓取工具是什么?这些以及更多内容将在下面讨论。


LinkedIn搜寻-概述

如果您曾经认为LinkedIn在抓取方面很容易破解,那么您将生活在自己的天堂中。毫无疑问,LinkedIn可能是最难抓取的网站,并且他们竭尽全力阻止抓取,包括建立智能,严格的反机器人系统以阻止抓取,以及建立法律部门。对你使用法律。LinkedIn遭受了很多刮擦,他们想制止它。LinkedIn发起的针对HiQ的诉讼是业内最受欢迎的反刮刮诉讼之一对于他们而言,不幸的是,HiQ赢得了诉讼。

尽管此案已与其他诉讼一起在网络刮擦的合法性以及根据某些因素确定惯例如何合法的问题上确立了先例,但它仍然可能是非法的,因此,建议您在刮擦之前先联系律师。尽管它被认为是合法的,但它远非道德规范,其道德方面也值得怀疑。但是,由于某些商业和研究原因,有些人将不得不忽略道德和道德方面的问题,而仍然需要掌握所需的数据。如果您是这样的人之一,那么本文适合您。


如何使用Python和Selenium抓取LinkedIn

我之前曾说过,爬网LinkedIn很困难。好吧,让我重新表述一下,抓取LinkedIn非常困难,即使有一点点错误,您也将很快被发现和屏蔽。这是因为LinkedIn拥有一个非常智能的系统来检测和拒绝漫游器流量。如果您知道自己不是经验丰富的机器人开发人员,则不妨使用本节下面讨论的一种已制成的LinkedIn抓取工具。但是,如果您准备好迎接挑战,那么可以尝试一下,看看绕过LinkedIn的反机器人检查是多么容易/困难。

对于Python程序员,您需要知道请求的二重奏和Beautifulsoup不会帮您–对于其他编程语言编码器,您需要呈现JavaScript的库/框架。这是因为请求不会呈现和执行JavaScript,因此,您需要Selenium才能完成。我尝试使用请求和Beautifulsoup,发现由于依赖AJAX而丢失了一些数据。

使用LinkedIn刮板时逃避检测的最重要方法是使用代理,而HiQ等公司也使用它们。由于LinkedIn反垃圾邮件系统的有效性,因此建议选择住宅代理。

除了代理服务器,您还需要模仿人类如何浏览互联网,该系统仍然可以拒绝您的访问。有了这些,您就可以访问LinkedIn上的所有公开可用数据。下面是一个示例代码,可抓取作业详细信息。这是一个非常基本的脚本,没有很多必需的代码来处理豁免,缺少HTML标签,代理以及看起来很自然。这仅仅是概念的证明。

from selenium import webdriver

class LinkedInScraper:

    def __init__(self):
        self.job_list = []
        chrome_options = webdriver.ChromeOptions()
        chrome_options.add_argument("--headless")
        self.chrome = webdriver.Chrome(chrome_options=chrome_options)

    def scrape_jobs(self):
        self.chrome.get("https://www.linkedin.com/")
        self.chrome.find_element_by_class_name("intent-module__button").click()
        jobs = self.chrome.find_element_by_class_name("jobs-
search__results-list").find_elements_by_tag_name("li")
        for job in jobs:
            d = job.find_element_by_class_name("result-card__contents")
            title = d.find_element_by_tag_name("h3").text
            company = d.find_element_by_tag_name("h4").text
            s = d.find_element_by_class_name("result-card__meta")
            location = s.find_element_by_tag_name("span").text
            time_stamp = s.find_element_by_tag_name("time").text
            job_detials = {"title": title,
                           "company": company,
                           "location": location,
                           "time": time_stamp}
            self.job_list.append(job_detials)

        return self.job_list

x = LinkedInScraper()
x.scrape_jobs()

阅读更多,

  • 如何在Twitter上抓取推文
  • 如何抓取Facebook群组帖子
  • 如何抓取Instagram帖子,评论…

市场上最好的LinkedIn爬虫

LinkedIn作为研究数据的来源非常受欢迎,因此,您可以使用一些竞争性的抓取工具从LinkedIn提取数据。但是,并非所有人都值得您花时间和金钱,因此,我仅向您推荐其中5款经过测试和信任的最佳LinkedIn抓取工具。


Octoparse

  • 定价:每月75美元起
  • 免费试用:有限制的14天免费试用
  • 数据输出格式: CSV,Excel,JSON,MySQL,SQLServer
  • 支持的平台:云,桌面

如果您要为LinkedIn设计的网页抓取工具不会出现故障,那么Octoparse应该会位于列表的顶部。你知道为什么?因为它可以说是市场上最好的网络抓取工具之一,并且非常适合抓取LinkedIn。

使用Octoparse,您可以将LinkedIn上的网页转换为结构化电子表格。Octoparse具有许多您希望在网络刮板中使用的功能。其中一些功能包括高级Web抓取功能,例如代理轮换,计划的抓取和基于云的平台。Octoparse是一种付费工具,并且价格合理。


ScrapeStorm

  • 定价:每月49.99美元起
  • 免费试用:入门计划是免费的-有限制
  • 数据输出格式: TXT,CSV,Excel,JSON,MySQL,Google表格等。
  • 支持的平台:台式机

ScrapeStorm是基于智能的抓取工具,可用于抓取LinkedIn。ScrapeStorm利用自动数据点检测系统来识别和抓取所需的数据。

对于自动识别系统无法使用的数据,可以使用点击界面。ScrapeStorm由前Google搜寻器团队构建。它支持多种数据导出方法,使抓取LinkedIn的整个过程变得容易。使用ScrapeStorm之前,请确保以正确的方式进行设置。它功能强大,可以帮助您进行企业级抓取。


Helium Scraper

  • 定价:一个用户许可起价为99美元
  • 免费试用:功能齐全的10天免费试用
  • 数据输出格式: CSV,Excel,XML,JSON,SQLite
  • 支持平台:台式机

Helium Scraper是一个桌面应用程序,可用于抓取LinkedIn数据。您可以抓取从用户个人资料数据到业务个人资料以及与职位发布相关的数据的任何内容。借助Helium Scraper直观的界面,可以轻松地从LinkedIn提取数据。Helium Scraper带有指向和点击界面,用于培训。

Helium Scraper提供了简便的工作流程,并确保了在提取复杂数据时的快速提取。当谈到Helium Scraper可以捕获的数据量时,它的大小为140 TB,因为这是SQLite可以保存的数据量。


ParseHub

  • 定价:每月149美元起
  • 免费试用:桌面版免费,但有一些限制
  • 数据输出格式: Excel,JSON
  • 支持的平台:云,桌面

ParseHub还是目前市场上最好的LinkedIn刮板之一。ParseHub旨在使数据分析人员无需编写任何代码即可从网页提取数据。

就像上面所有的网页抓取工具一样,ParseHub是一种可视化的网页抓取工具。与上述情况不同,其桌面应用程序是免费的,但有一些限制可能对您并不重要。ParseHub非常灵活和强大。IP旋转是Web抓取中的关键,使用桌面应用程序时,您必须自己设置代理。


Proxycrawl LinkedIn抓取工具

  • 定价: 50,000积分的月费为29美元起
  • 免费试用:前1000个请求
  • 数据输出格式: JSON
  • 支持的平台:基于云–通过API访问

Proxycrawl在其抓取API清单中拥有大量的抓取工具,其中LinkedIn抓取工具就是此类工具之一。与上面的4种不需要任何编码技能的Web抓取工具不同,LinkedIn抓取工具适用于试图避开代理管理和验证码处理的开发人员。这样,您可以从LinkedIn上抓取很多数据,包括公司的描述和员工数据,用户个人资料信息等等。使用Proxycrawl与发送API请求一样简单。


结论

LinkedIn已证明,就抓取而言,这是很难破解的。在大多数情况下,如果尝试使用简单的Web刮板进行抓取,则会被检测到并被阻止。除非您知道自己在做什么,否则最好的选择就是使用专家开发的LinkedIn抓取器。上面已经讨论了其中的5个。