采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
这里如果用extract会报错index out of range,我有个地方不明白。url的content一定有,为什么还会报错呢?以及extract()[0]和extract_first(“”)有什么区别呢?
extract()[0]和extract_first(“”)课程中我讲解过的, 上面的哪个如果没有数据会抛出异常, 如果报了这个错一定是xpath没有提取到数据,你可以吧html打印出来仔细对比一下有没有数据
extract()方法提取的是一个列表对象,extract()[0]利用切片方法提取列表里的第一个元素,如果extract()提取的列表为空的话会报错。 extract_first("")是直接提取extract()提取的列表对象的第一个元素,如果列表为空的话不会报错,而是返回一个默认值,如“”,也就是extract_first("")括号里的部分。 有点像于正则库re的findall和find的关系?bobby老师,可以这么理解嘛?
正解!
登录后可查看更多问答,登录/注册
带你彻底掌握Scrapy,用Django+Elasticsearch搭建搜索引擎
5.3k 30
2.9k 18
1.5k 18
1.8k 15
3.4k 15
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号