官方数据:R中Web抓取和解析数据 | 研究H-1b数据(1)

优采云 发布时间: 2022-09-23 09:18

  官方数据:R中Web抓取和解析数据 | 研究H-1b数据(1)

  本文概述

  本教程的目的是向您展示如何通过使用 R 进行网络抓取来采集 H1B 签证数据。接下来,您还将学习如何解析 JSON 对象,以及如何存储和处理数据,以便您可以执行基本的探索针对 H1B 申请的大型数据集的数据分析 (EDA)。

  也许您可以学习如何将自己定位为候选人或 R 代码新手!

  (想练习将数据导入 R 吗?试试这个教程在 R 中导入数据。)

  内容清洗数据探索数据:第一步H1B签证数据后续步骤介绍

  上周,srcmini 的博客“数据可以帮助您申请 H-1B 签证”向您展示了多年来对 H-1B 数据的分析结果。现在,是时候动手了,自己分析数据,看看还能找到什么!Ted Kwartler 将通过一系列 R 教程指导您完成此过程。

  我有一个朋友在德克萨斯州一家提供 H1B 签证的*敏*感*词*事务所。H1B是美利坚合众国的非移民签证,允许美国雇主临时雇用从事专业工作的外国工人。显然,被接受是非常困难的,因为与成千上万的申请人相比,签证供应有限。

  虽然这是轶事,但我决定自己探索数据,希望帮助合格的候选人知道美国是一个受欢迎的地方!

  获取数据:网页抓取和解析

  我的 srcmini 同事给我指出了这个 网站,它是一个简单的 网站,其中收录 2012 年至 2016 年的 H1B 数据。网站 声称将 2M H1B 申请组织到一个表中。

  我决定以编程方式采集这些数据(阅读:网络抓取),因为我这辈子都不会复制/粘贴!

  如您所见,下图显示了 网站 的一部分,其中显示了波士顿的 H1B 数据:

  本教程中将使用的库包括用于解析 JSON 对象的 jsonlite、用于“采集”HTML 的 rvest、pbapply(个人偏好,因为它在基本应用函数中添加了进度条)和 data.table,它在大范围内改进了 R在数据帧上扩展性能。

  

library(jsonlite)

library(rvest)

library(pbapply)

library(data.table)

  探索页面结构

  当您浏览该站点时,您会意识到搜索表单会建议预先填充的选项。例如,在 City 字段中键入“B”将显示以下建议的架构。

  下图显示了我键入“B”时的预填充选项:

  这意味着您可以使用预填充作为查询站点的有效方式。

  使用 Chrome,您可以重新加载,然后右键单击“检查”页面,然后导航到开发人员面板中的“网络”,最后在页面上键入“B”以加载模式。

  浏览 Web 面板链接,您会发现一个 PHP 查询,它返回一个类似城市的 JSON 对象。

  目标是首先采集所有建议的城市,然后使用该列表从 H1B 数据中抓取大量页面。

  浏览上一个 URL 时,您会注意到它以字母结尾。所以你可以 paste0() 与 URL 基础,?term = 与字母一起使用。每个字母的值都会被回收。字母对象是从“a”到“z”的内置 R 向量。json.cities 对象是一个 URL 向量,从 a 到 z,收录所有预先填充的 JSON 建议。

<p>

json.cities

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线