美文网首页网络爬虫Python数据采集与爬虫爬虫专题
Web Scraper官方文档中文版(第2部分)

Web Scraper官方文档中文版(第2部分)

作者: 风巢 | 来源:发表于2018-01-03 21:45 被阅读36次

    四、选择器(Selectors)

    如上图,Web Scraper 有多种选择器类型,用于网站多种交互逻辑下需求各异的数据抓取。这些选择器可按功能分为 3 组:

    1、Data extraction(数据提取 )选择器用于数据提取

    2、Link(链接)选择器用于站点导航

    3、Element(元素)选择器用于从分隔的多个记录中选择元素

    Date extraction 选择器

    Date extraction 选择器仅从选中的元素中返回数据。譬如 Text (文本)选择器从选中的元素中提取文本。以下选择器可用作 Date extraction 选择器:

    1)Text(文本)选择器

    2)Link(链接)选择器

    3)Link popup(弹出链接)选择器

    4)Image(图像)选择器

    5)Table(表格)选择器

    6)Element attribute(元素属性)选择器

    7)HTML 选择器

    8)Grouped(组块)选择器

    Link 选择器

    Link 选择器从链接中提取 URL,后续可用于数据提取。比如,如果在一个 sitemap 中有个 LInk 选择器有三个子 Text 选择器,Web Scraper 会从 Link 选择器中提取所有链接,然后打开每个链接,使用子 Date 选择器提取数据(此处指那 3 个 Text 选择器)。当然,Link 选择器的子选择器可以仍为 Link 选择器,这些子选择器用于在页面间导航。目前有以下两个 Link 选择器可供使用:

    1)Link (链接)选择器

    2)Link popup (弹出链接)选择器

    Element 选择器

    Element 选择器用于选择元素包含多个数据元素的情况。比如,Element 选择器可用于在电子商务网站上选择多个项目,返回包含子选择器的母选择器。子选择器之从母选择器选择的元素范围中提取数据。以下是可用的 Element 选择器:

    1)Element(元素)选择器

    2)Element scroll down(元素下拉)选择器

    3)Element click(元素点击)选择器

    选择器设定选项

    如上图,每个选择器都有设定选项。以下是常见的设定选项。选择器专有的设定选项参见随后各选择器说明文档。

    1)selector - CSS 选择器选取所需元素

    2)multiple - 如果要选择多个记录需勾选此项。从两个或多个选中 multiple 的选择器中提取的数据不会合并到一个单独记录中

    3)delay - 选择器生效前的延迟时长

    4)parent selectors - 为此选择器选择母选择器以产生选择器树形结构

    注意:一个常见错误是同时创建两个选择器设定选项均选中 multiple,期望结果自然合并。例如,如果您同时选择分页链接和导航链接,这些链接无法自然合并。正确的方法是使用元素选择器选用 Element 元素,并将 Data 选择器作为子选择器添加到 Element 选择器中,而不是选中 multiple 选项。

    4.1 Text 选择器

    Text 选择器用于选择文本。Text 选择器会从选用元素及其子元素中提取文本,剥离 HTML(超文本标记语言),只抽出其中的文本。此选择器会忽略  及  标签中的文字。换行
     标签会被替换为换行符。你还可以使用正则表达式来处理数据。

    设定选项

    1)selector - CSS 选择器,用于选择需提取数据

    2)multiple - 选取多项记录。通常无需选中。如果你想在一个页面使用多种 Text 选择器,则你应当换用 Element 选择器。

    3)regex - 正则表达式用于从结果中提取子字符串

    Regex 正则表达式

    正则表达式选项用于从选择器获取的结果中提取子字符串。使用正则表达式会返回完全匹配的结果。你可以在 www.regexr.com 上学习并演练正则表达式。

    以下是一些平时可以用到的示例:

    应用案例

    1)每页提取 1 项纪录,使用多个文本选择器提取纪录不同字段

    例如,你要抓取的站点每页有一篇文章。文章中包含标题、出版日期及作者信息。Link 选择器可将 Scraper 引至每个文章页面。建立多个文本选择器分别提取标题、出版日期及作者信息。 Text 选择器的Multiple 选项无需勾选因为每页只提取 1 项纪录。

    2)使用多个 Text 选择器,每页提取多项记录

    电商网站通常每页包含多项商品。如欲抓取这些项目需使用 Element 选择器将商品选中,对提取商品属性的 Text 选择器进行封装。

    3)每页提取多项文本

    比如你想要提取某篇文章的评论。每页有多项评论,你只想要其中的文本(如果你想要其他评论属性可参考上个示例)。你可以使用 Text 选择器提取这些评论。因为你想要提取多个数据,Text 选择器 multiple 选项需选中。

    相关内容:

    Web Scraper 官方文档中文版(第 1 部分)

    相关文章

      网友评论

        本文标题:Web Scraper官方文档中文版(第2部分)

        本文链接:https://www.haomeiwen.com/subject/qliknxtx.html