能否在一个for循环下取到不同html标签下的值。

能否在一个for循环下取到不同html标签下的值。

class DqSpider(scrapy.Spider):
    name = 'dq'
    allowed_domains = ['https://www.dongqiudi.com/news']
    start_urls = ['https://www.dongqiudi.com/news/']

    def parse(self, response):
        Premier_league_title = response.xpath("//div/div[@class='bottom']/div[@class='bottom-left']/div[@class='abroad']/div[@class='abroad-news']/div[@class='list yc']/ul/li/a/text()")
        # for item in Premier_league_title:
        #     print(item)
        release_time = response.xpath("//div/div[@class='list-con']/div[@class='left-con']/div[@class='list-item']/dl[@class='relate-news-list']/dd/p[@class='tips']/span[@class='time']/text()")
        print(Premier_league_title)
        print(release_time)

比如想循环取出的标题,时间,一类的数据,但是因为HTML下标签不一样,每次只能单取一个,是不是要写多个for循环来取,能否在一个for循环下取到不同html标签下的值。

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,如果是一个大标签下有许多标签是同学需要的,可以在一个循环中取多个标签,如果标签中只有一个是同学需要的,那么同学只能用不同的for循环一个一个取字段,然后取到的结果拼接字段成为一条完整数据


如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • qq_阳光_134 提问者 #1
    按照教程,for循环只能取相同大标签下的。比如同个div下的,但是不同div标签下只能分开单取。如果取多个请问怎么操作,老师。
    2020-09-12 19:34:35
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
4.入门主流框架Scrapy与爬虫项目实战
  • 参与学习           人
  • 提交作业       107    份
  • 解答问题       1672    个

Python最广为人知的应用就是爬虫了,有趣且酷的爬虫技能并没有那么遥远,本阶段带你学会利用主流Scrapy框架完成爬取招聘网站和二手车网站的项目实战。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师