在第一次访问一个Response对象的selector属性时,Response对象内部会以自身为参数自动创建Selector对象,并将该Selector对象缓存,以便下次使用。
例子如下:
from scrapy.http import HtmlResponse text =''' <html> <body> <h1>Helo World</h1> <h1>Hello Scrapy</h1> <b>Hello python</b> <ul> <li>C++</li> <li>Java</li> <li>Python</li> </ul> </body> </html> ''' response = HtmlResponse(url='http://www.example.com',body=text,encoding='utf8') print(response.selector)
Response对象在xpath方法
print(response.xpath('.//h1/text()').extract())
Response对象在css方法
print(response.css('li::text').extract())