|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 heywilliam 于 2018-5-9 18:42 编辑
我在爬取链家地产的房产信息(https://gz.lianjia.com/zufang/pg2/)
现在正在抓取每个房子的地铁信息,如图红色画圈部分所示,
每套房产都独立的放在含有data-index元素的大标签里
在网页源代码中地铁信息存放在大标签下class='fang-subway-ex'的小标签中,由于不是每个房子都有地铁标签,所以不是每个房子都有class='fang-subway-ex'的小标签
我想要通过以下代码遍历每一套房产(一共30套)的地铁信息,有地铁的话就在sub集合里存入地铁信息,没有的话就存入一个空格
我尝试在代码里放入$val插入参数,但是运行起来好像无法实现,请问是我写法有错误吗?
- for i in range(0,30):
- sub = []
- decoration = []
- haskey = []
- a = response.xpath(".//li[@data-index=$val]//span[@class='haskey-ex']/span/text()", val = str(i)).extract()
- if a == []:
- sub.append(' ')
- else:
- sub.append(a)
复制代码
希望达到的输出是
['离地铁XXX', ' ', ' ', ' ', '离地铁XXX', ' ', '离地铁XXX']
而不是:
['离地铁XXX', '离地铁XXX', '离地铁XXX']
xpath0="//*[@id="house-lst"]/li[{}]"
for i in range(1,31):
xpath=xpath0.format(i)
不过需要一层一层的去找,比较累
|
|