selector选择器学习

xpath

这里给出XPath表达式的例子及对应的含义:

  • /html/head/title: 选择HTML文档中 标签内的 元素</li><li>/html/head/title/text(): 选择上面提到的 <title> 元素的文字</li><li>//td: 选择所有的 <td> 元素</li><li>//div[@class=”mine”]: 选择所有具有 class=”mine” 属性的 div 元素</li></ul> <p>Selector有四个基本的方法(点击相应的方法可以看到详细的API文档):</p> <ul> <li><a rel="nofollow" href="https://scrapy-chs.readthedocs.io/zh_CN/1.0/topics/selectors.html#scrapy.selector.Selector.xpath">xpath()</a>: 传入xpath表达式,返回该表达式所对应的所有节点的selector list列表 。</li><li><a rel="nofollow" href="https://scrapy-chs.readthedocs.io/zh_CN/1.0/topics/selectors.html#scrapy.selector.Selector.css">css()</a>: 传入CSS表达式,返回该表达式所对应的所有节点的selector list列表.</li><li><a rel="nofollow" href="https://scrapy-chs.readthedocs.io/zh_CN/1.0/topics/selectors.html#scrapy.selector.Selector.extract">extract()</a>: 序列化该节点为unicode字符串并返回list。</li><li><a rel="nofollow" href="https://scrapy-chs.readthedocs.io/zh_CN/1.0/topics/selectors.html#scrapy.selector.Selector.re">re()</a>: 根据传入的正则表达式对数据进行提取,返回unicode字符串list列表。</li></ul> <pre><code class="lang-html"><ul class="list"> <li>123</li> <li>abc</li> </ul> </code></pre> <p>xx.xpath(“./ul[@class=’list’]/li”).extract() #output #[‘123’,’abc] #extract使提取内容转换为Unicode字符串,返回数据类型为list</p>