LinkedIn 网页抓取

数据挖掘 数据挖掘 社会网络分析 爬行
2021-10-11 05:09:27

我最近发现了一个用于连接 LinkedIn API的新 R 包。不幸的是,LinkedIn API 一开始似乎很有限;例如,您只能获取公司的基本数据,而这与个人数据是分开的。我想获取给定公司所有员工的数据,您可以在网站上手动完成,但无法通过 API。

如果import.io识别 LinkedIn 分页(见页尾),那将是完美的。

有谁知道任何适用于 LinkedIn 网站当前格式的网络抓取工具或技术,或者弯曲 API 以进行更灵活分析的方法?最好是基于 R 或基于 Web 的,但肯定对其他方法持开放态度。

4个回答

Beautiful Soup专为网络爬虫和抓取而设计,但它是为 python 而不是 R 编写的

Scrapy是一个很棒的 Python 库,它可以帮助您更快地抓取不同的站点并使您的代码结构更好。并非所有网站都可以使用经典工具进行解析,因为它们可以使用动态 JS 内容构建。对于这个任务,最好使用Selenium(这是一个网站测试框架,但它也是一个很棒的网络抓取工具)。这个库还有一个Python 包装器可用。在 Google 中,您可以找到一些技巧,这些技巧可以帮助您在Scrapy中使用 Selenium ,并使您的代码清晰、有条理,并且您可以为Scrapy库使用一些很棒的工具。

我认为 Selenium 对于 Linkedin 来说会比经典工具更好。有很多 javascript 和动态内容。此外,如果您想在您的帐户中进行身份验证并抓取所有可用内容,那么使用requestsurllib等简单库进行经典身份验证会遇到很多问题。

我喜欢rvest结合 SelectorGadget chrome 插件来选择相关部分。

我使用 rvest 并构建了小脚本来通过论坛分页:

  1. 查找“Page n Of m”对象
  2. 提取米
  3. 基于页面结构,构建从1到m的链接列表(例如www.sample.com/page1)
  4. 通过完整的链接列表迭代刮板

如果你知道 python,我也会选择beautifulsoup。如果您更喜欢编写 javascript/JQuery 代码(并且您熟悉 node.js),您可能需要查看CoffeeScript(查看教程),我已经多次成功地使用它来抓取网页。