# 文本选择器\(Text selector\) 文本选择器用于文本选择。文本选择器将从所选元素及其所有子元素中提取文本。HTML代码将被去除,仅返回文本。选择器忽略 `<script>`和`<style>`标签之间的文本,换行标签`<br>`将被替换为换行符。您还可以用正则表达式处理结果中的数据。 ### 配置选项 * Selector - 文本元素的[css选择器](/543194),将提取选择器中包含的数据。 * multiple - 将提取多个数据,通常不应该被勾选。如果你想在一个页面内使用多个文本选择器,那么你实际上可能需要的是[元素选择器](/543194)。 * regex - 利用正则表达式从结果中提取一个字符串。 #### 正则表达式 正则表达式属性可用于提取选择器提取的文本的子字符串。当使用正则表达式时,整个match \(group 0\)将作为结果返回,www.regexr.com是一个很棒的网站,您可以在这里了解正则表达式并尝试使用它们。 以下是您可能会觉得有用的一些示例: | 文本 | 正则表达式 | 结果 | | :--- | :--- | :--- | | price: 14.99$ | \[0-9\]+.\[0-9\]+ | 14.99 | | id: H83JKDX4 | \[A-Z0-9\]{8} | H83JKDX4 | | date: 2014-08-20 | \[0-9\]{4}-\[0-9\]{2}-\[0-9\]{2} | 2014-08-20 | ### 用例 **使用多个文本选择器,每页提取一条记录** 例如,你在抓取新闻网站,每页有一篇文章。该页面可能包含文章,标题,发布日期和作者。一个链接选择器可以浏览抓取这些文章页。多个文本选择器可以提取标题,日期,作者和文章。 对于文本选择器,应该不选中多个选项,因为每个页面只提取一条记录。 ![](https://box.kancloud.cn/3faf707321d7035a0706eab56f66f8ae_522x341.png) 图1:每页多个文本选择器 **使用每个页面的多个文本选择器提取多个项目** 电子商务网站通常每页有多个项目,如果你想抓取这些项目,你需要一个元素选择器和多个文本选择器提取这些数据。 ![](https://box.kancloud.cn/6fc0cfe4814f1b743b04dfc3d83fb520_522x373.png) 图2:具有文本选择器的多个元素。 一些箭头被跳过。 **每页提取多个文本记录** 例如,您想要提取文章的评论。单个页面中有多条评论,您只需要评论文本(如果您需要其他评论属性,请参阅上面的示例)。您可以使用 文本选择器来提取这些评论。该文本选择多个属性,应检查,因为你会被提取多个记录。 ![](https://box.kancloud.cn/0febca5de0ee49e8cee158bfe65e4a5b_523x268.png) 图3:文本选择器选择多个注释