首页 > 其他分享 >网络抓取数据科学及相关工作

网络抓取数据科学及相关工作

时间:2022-09-22 12:55:29浏览次数:71  
标签:提取 职位 使用 抓取 网络 科学 网页 我们

数据科学

网络抓取数据科学及相关工作

使用 Requests & Beautiful Soup 成功抓取了 100 多个职位空缺

D ata科学是 **** 结合领域专业知识、编程技能以及数学和统计学知识以从数据中提取有意义的见解的研究领域。数据科学从业者将机器学习算法应用于数字、文本、图像、视频、音频等,以产生人工智能 (AI) 系统来执行几乎不需要人类智能的任务。作为回报,这些基于人工智能的系统会产生有意义的洞察力,分析师和业务用户可以将这些洞察力转化为业务价值。

Web Scraping 是一种从网站获取大量数据的自动方法。在本文中,我们将收集有关数据科学及其相关领域的工作机会的数据,来自 的确 使用 Python 要求 , 美丽的汤 .

**目录索引**  
 · 使用请求下载网页  
 · 使用请求下载网页  
 · 使用漂亮的汤来解析 HTML 源代码  
 · 提取有关职位发布的详细信息  
 · 将提取的信息编译到 Pandas DataFrame 中  
 · 使用 for 循环创建一个 Python 列表来存储所有抓取的数据  
 · 将提取的信息保存到 CSV 文件。  
 · 概括 是的  
 · 未来的工作  
 · 参考

使用请求下载网页

Indeed Job Portal

使用请求下载网页

现在让我们抓取 URL 并将其保存到容器中并使用 要求 库允许我们向网站服务器发送 HTTP 请求以下载内容。

现在让我们检查下载内容的状态

  • 对的回应 要求。得到() 应该在 200 到 299 之间以下载 Web 内容。
  • 响应状态可以通过以下方式验证 状态码()

我们现在已经成功下载了网页。

使用漂亮的汤来解析 HTML 源代码

我们将使用 Beautiful Soup 库来解析下载网页的 HTML 源代码。

[

Beautiful Soup 文档 - Beautiful Soup 4.9.0 文档

Beautiful Soup 是一个 Python 库,用于从 HTML 和 XML 文件中提取数据。它与您最喜欢的解析器一起使用以...

www.crummy.com

](https://www.crummy.com/software/BeautifulSoup/bs4/doc/)

我们现在将从 Beautiful Soup 对象中提取细节,使用 物体。” 功能。让我们找出 标题 的网页。

我们已经成功提取了网页的标题。

提取有关职位发布的详细信息

现在让我们提取职位名称、组织名称、职位位置、评级、薪水和职位发布日期。

现在让我们创建一个辅助函数“ 获取标题()” 使用 BeautifulSoup 下载所有职位“ 。找到所有” 功能。

现在让我们创建一个辅助函数“ 获取标题()” 使用 BeautifulSoup 下载所有职位“ 。找到所有” 功能。

我们将对组织名称、工作地点、组织评级、工作描述、发布日期和薪水重复相同的过程。
但是,在提取 Rating & Salary 时,发现一些组织没有任何评级或提及所提供的薪水。

在这里,我们将使用“ 尝试 &除外” python编程的概念来填补缺失值 “那” 。

[

8. 错误和异常 - Python 3.10.7 文档

到目前为止,错误消息并没有被提及,但是如果您尝试过这些示例,您可能已经......

docs.python.org

](https://docs.python.org/3/tutorial/errors.html)

让我们创建辅助函数 下载网络(), 下载网页并解析它。

如您所见,“ docs”(美丽的汤品) 存储解析后的 H​​TML 数据。

将提取的信息编译到 Pandas DataFrame 中

现在让我们首先为每个不同的 Job Role 创建容器。

现在我们将创建这些容器的列表。

现在让我们创建一个最终的辅助函数 细节() 在一个引擎盖下编译所有数据,调用先前创建的函数来提取有关特定工作的所有详细信息,例如。 数据科学家

如您所见,我们已经使用生成了 Pandas DataFrame pd.DataFrame 功能并返回它。

使用 for 循环创建一个 Python 列表来存储所有抓取的数据

在这里,我们将仅使用一个 for 循环来抓取和解析数据,用于我们为不同工作角色创建的所有 URL,并将其保存在 python 列表中。

现在让我们使用 打印 功能

在这里,我们可以看到创建了一个包含详细信息的列表列表。我们将使用 PD。康卡特 函数生成一个新的 pandas DataFrame。

这是完整和最终的 pandas DataFrame,包含 105 个与数据科学和相关领域相关的空缺职位。

将提取的信息保存到 CSV 文件。

让我们将提取的信息保存到“. CSV” 文件格式

概括

在这篇博文中,我们试图通过提供的工作地点、描述和薪水来挖掘 PAN INDIA 位置的数据科学及其相关领域的不同工作机会。

  1. 我们从以下位置下载了数据科学和相关的职位发布 的确 **** 使用 要求 图书馆。
  2. 使用解析 HTML 源代码 ****美丽的汤 **** 图书馆。
  3. 提取有关职位发布的详细信息,例如职位名称、组织名称、职位位置和薪水作为 Python 列表。
  4. 将提取的信息组装到 Pandas DataFrame 中并将其保存到 CSV 文件中。

未来的工作

以下是对未来工作的一些想法:-

  • 在这里,我们只解析了包含 15 个职位的每个职位发布的单页。对于非动态加载的网站,我们可以使用代码分别解析所有页面。
  • 由于 Indeed 是一个动态加载的网页,因此我们仅限于第一页。我们可以使用 AWS Selenium 网络抓取所有数据。
  • 我们可以使用类似的代码从 Glassdoor、Naukri 和其他著名的工作门户网站抓取网页。

参考

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/38694/47422212

标签:提取,职位,使用,抓取,网络,科学,网页,我们
From: https://www.cnblogs.com/amboke/p/16718854.html

相关文章

  • VMware虚拟机三种网络模式
    桥接模式NAT模式主机模式......
  • 网络服务-nginx进阶
    1.写出几个nginx的常用模块,并描述其功能    使用的算法:RR算法轮询算法加权轮询ip_hash源地址hashleast_conn最少连接 LAMP使用apache连接phpLNMP......
  • 尚硅谷网络基础TCP三次握手
    1.简述TCP三次握手的过程。 访问过程是给序列号+1来进行沟通访问的常用的3个标志位SYN信包发起一个连接ACK确认标志位FIN释放连接linux通过netstat-......
  • 网络基础OSI七层模型
    1.ISO/OSI七层模型的分层和作用·iso是国际标准组织osi是开放系统互联1第七层:应用层·为给用户提供服务,给用户提供一个操作界面如windos窗口,linux是命令行界面第......
  • linux网络服务-SSH服务
    1.哪些设置能提升SSH远程管理的安全等级?      ......
  • 网络流 17 题
    A.蜥蜴次数的限制可以用拆点解决,然后直接连边即可。B.OPTM-OptimalMarks把二进制位拆开,套用最小割模型即可。C.HardLife二分答案\(x\),然后对于每条边建立一个......
  • vm虚拟机安装centos并配置网络
     第三步:    第二步:先配置,网卡为DHCP和    第一步骤: ......
  • NAT模式下的虚拟机连接主机网络
    基于NAT模式的VMware虚拟机(LinuxCentOS7)连接主机(Windows11)网络一、什么是NAT模式虚拟机连接主机网络的三种方式:Bridged(桥接)NAT(网络地址转换)Host-Only(仅主机)NA......
  • 计算机科学速成课第十八课:操作系统
    1.操作系统(OS)操作系统也是一种程序,不过它有操作硬件的特殊权限,可以运行和管理其他程序。2.批处理一个程序运行后会自动运行下一个程序。3.外部设备和计算机连着的其......
  • 网络安全网卡“哨兵” 一刻不能打盹
    随着全球信息化的飞速发展,整个世界正在迅速地融为一体,大量建设的各种信息化系统已经成为国家和政府的关键基础设施。众多的企业、组织、政府部门与机构都在组建和发展自己......