网页爬虫 - Python小白用Scrapy爬虫返回的是空元素,请问各位大神哪里出了问题?
问题描述
用scrapy爬了图书馆书籍的书名和评论,用Chrome的检查拔下来的Xpath,但是运行爬虫返回的是空元素,请问各位哪里出了问题,谢谢大家。截图:
附上我的Scrapy源码,请大家多指教,谢谢!
from scrapy import Spiderfrom scrapy.selector import Selectorfrom CommentCrawl.items import CommentcrawlItemclass commentcrawl(Spider): name = 'commentcrawl' allowed_domains = ['http://opac.lib.bnu.edu.cn:8080'] start_urls = ['http://opac.lib.bnu.edu.cn:8080/F/S9Q2QIQV5D9R9HBHPI2KNN8JH11TRIRSIEPKYQLTAQQ17LA6B6-16834?func=full-set-set&set_number=010408&set_entry=000001&format=999', ] def parse(self,response):item = CommentcrawlItem()item[’name’] = Selector(response).xpath(’//*[@id='details2']/table/tbody/tr[1]/td[2]/a/text()’).extract()item[’comment’] = Selector(response).xpath(’//*[@id='localreview']/text()’).extract()yield item
问题解答
回答1:页面需要登录才能访问,缺少登录操作。
回答2:页面被登录拦截了。
回答3:你把你实际获得的内容打印或者保存完了,看看是什么内容。估计是返回的内容跟你的 Xpath 匹配不上,该登录的登录啊。