- 23
- 0
问题描述
在学习Scrapy过程中,使用xpath来提取想要的内容,首先提取出来ul标签中的li标签得到装有所有li标签的list,遍历list内容,再xpath提取每个li标签中的想要的信息,不过运行爬虫后,提示,li是个str类型,没有xpath方法
问题出现的环境背景及自己尝试过哪些方法
我在想是否应该将便利后的每个li标签都转成xml文本?不过没找到方法
相关代码
class LianJiaSpider(Spider):
name = "second"
allowed_domains = ["lianjia.com"]
start_urls = ["https://zz.lianjia.com/ershoufang/"]
def parse(self, response):
one_page_infos = response.xpath('//ul[@class="sellListContent"]/li').extract()
for li in one_page_infos:
item = SecondhousespiderItem()
item["title"] = li.xpath('.//div[@class="title"]/a/text()')
item["total_price"] = li.xpath('.//div[@class="totalPrice"]/span/text()') + "万"
item["unit_price"] = li.xpath('.//div[@class="unitPrice"]/span/text()')
item["house_info"] = li.xpath('.//div[@class="houseInfo"]/text()')
item["house_position"] = li.xpath('.//div[@class="positionInfo"]/a/text()') \
+ li.xpath('//div[@class="houseInfo"]/a/text()')
item["house_url"] = li.xpath('.//div[@class="title"]/a/@href')
yield item
num = response.xpath('//div[@class="page-box house-lst-page-box"]/a[last()-1]/text()')
for i in range(2, int(num) + 1):
next_page = "https:zz.lianjia.com/ershoufang/pg%s" % str(i)
yield Request(next_page, self.parse)
你期待的结果是什么?实际看到的错误信息又是什么?
这是错误结果:
item["title"] = li.xpath('.//div[@class="title"]/a/text()')
AttributeError: 'str' object has no attribute 'xpath' 0
打赏
收藏
点击回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
