网络抓取工具是一种工具,可让我们选择网站的非结构化数据并将其转换为结构化数据库。 那么,网络刮板将在哪里派上用场呢? 我列出了我最喜欢的用例,让您对启动自己的应用感到兴奋!
- 抓取房地产列表-企业正在使用网络抓取来收集已经列出的房地产
- 刮擦零售商或制造商网站上的产品/产品评论以显示在您的网站中,提供规格/价格比较
- 抓取新闻网站以应用自定义分析和管理(手动或自动),向受众提供针对性更强的新闻
- 收集电子邮件地址以产生潜在客户
现在开始吧! 作为一个简单的示例— 我们将抓取Hacker News的首页以获取链接的标题。
如果您还不熟悉 标准库 ,那您将大饱口福! 标准库 是一个API开发和发布平台,可以帮助您使用浏览器内的API编辑器( 标准库上的 代码)在创纪录的时间内构建和发布 代码。
第一步:登录标准库中的代码
第一步是转到https://code.stdlib.com/并创建一个免费帐户。 Standard Library上的代码是由Standard Library的团队构建的在线API编辑器,这是一个可嵌入式开发环境,用于快速构建API,webhooks和工作流自动化任务。
在左下角单击(登录) 。 如果您具有标准 库帐户,请单击“ 已注册”,然后使用您的标准库凭据登录。 将会弹出一个模式,提示您声明名称空间 (这是您的用户名)。 输入您的电子邮件并选择一个密码。
创建帐户后,将出现另一个模块,其中列出了订阅计划。 免费帐户是您入门所需的全部,但您可以在此处阅读有关标准库定价套件的更多信息 。
单击“ 订阅+赚取积分”后,您应该会看到一条确认消息。
单击继续以返回到登录页面。
第二步:选择Web Scraper源代码
从源代码按钮中选择API 。 标准库源代码旨在简化不同类型项目的创建。 源代码为样板代码和目录设置等提供了默认值,因此您可以直接开发和实现更复杂的功能。
您应该看到已发布源代码的列表。 向下滚动并选择@ nemo / web -scraper 。 确保输入所需的API名称,然后点击确定 (或按Enter)
然后,您将在以下位置看到端点的代码: functions/__main__.js
在右侧,您会注意到一个参数框。
在URL必需的参数类型中:
在查询中输入:
[[".storylink", "text"]]
选择绿色的“ 运行 ”按钮。
在几秒钟之内,您应该在Hacker News的首页上的标准库代码的结果部分下获得链接标题列表。 您会注意到一个文档门户—将文档URL复制并粘贴到浏览器中的新选项卡中,以查看标准库中的API信息。
如何运作🤓
Web抓取工具对URL进行简单的GET请求,然后在结果页面上运行一系列查询并将其返回给您。 它使用了强大的cheerio DOM(文档对象模型)处理器,使我们能够使用CSS选择器从页面中获取数据! CSS选择器是用于选择要组织的元素的模式。
如何使用CSS选择器查询
网页以诸如HTML 的 标记语言编写。HTML 元素是HTML文档或网页的一个组成部分。 元素定义信息在浏览器上的显示方式,例如图像,多媒体,文本,样式表,脚本等。
在此示例中,我们使用“ .class”选择器 (class =“ .storylink”)从Hacker News主页的所有元素中获取所有超链接的标题。
如果您想知道如何查找组成网站的元素的名称,请允许我向您展示!
启动Google Chrome浏览器,然后输入我们的Hacker News URL地址https://news.ycombinator.com/
。 然后,右键单击任何文章的标题,然后选择“ 检查”。 ”这将在Google Chrome上打开Web控制台。 或者,您可以使用命令键 ( ⌘)+选项键(⌥)+ J键。
Web开发人员控制台将在屏幕右侧打开。 请注意,当您选择链接的标题时,控制台上的部分也会突出显示。 高亮显示的元素具有定义为“ storylink”的“类”。 现在,您知道了如何在任何站点上查找元素的名称!
如果要在Hacker News上查询其他元数据,请将光标悬停在它上面。 在下面,您可以看到如何通过将鼠标悬停在Hacker News上的.class选择器=“ sitestr”来查询链接的URL。
就是这样,谢谢!
谢谢阅读! 我希望您在这里发表评论 , 给我发电子邮件给Janeth [at] stdlib [dot] com ,或者在Twitter上关注标准库 @StdLibHQ 。 让我知道您是否建立了希望标准库团队展示或分享的精彩内容-我很乐意提供帮助!
珍妮丝·莱德兹玛(Janetth Ledezma)是标准库和伯克利大学毕业生的开发倡导者! she当她不学习阿拉伯语或锻炼时,您会发现她骑着CBR500R。 with通过Twitter @mss_ledezma的 标准库跟踪她的旅程 。