genesisorder 2023-07-07 08:04 采纳率: 0%
浏览 18

怎么把这些代码运行出来的数据保存到csv里?


import csv
import requests

from lxml import etree
for i in range(1,111):
        resp = requests.get(f"https://www.shifair.com/exhibition/0-0-0-0-0-0-add_time-desc-{i}/")
        html = etree.HTML(resp.text)
        divs = html.xpath("/html/body/div/div[5]/div[2]/div")
        for div in divs:
                zhanhui = div.xpath("./div/h1/a/text()")
                tuijian = div.xpath("./div[2]/div[1]/span/text()")
                buttons = div.xpath("./div[2]/div[3]/button/text()")
                scales = div.xpath("./div[2]/div[4]/div/text()")
                time = div.xpath("./div[2]/div[2]/div[1]/text()")
                day = div.xpath("./div[2]/div[2]/div[2]/span/text()")
                hot = div.xpath("./div[1]/div/span/text()")
                pinglun = div.xpath("./div[2]/div[5]/div[1]/span/text()")
                dingyue = div.xpath("./div[2]/div[5]/div[2]/button/text()")
                
                print(zhanhui, tuijian, buttons, scales, time, day, hot, pinglun, dingyue)


  • 写回答

4条回答 默认 最新

  • Marst·Zhang 2023-07-07 09:15
    关注

    存储数据

    后续追加数据 'w' 改成 'a'

    # data 数据    path  存储路径  data.csv
    def write_to_csv(data, path):
        
        with open(path, 'w', newline='') as f:
            my_writer = csv.writer(f)
            my_writer.writerows(data)
        return path
    
    
        import csv
        import requests
    
        from lxml import etree
        path = 'SAVE.CSV'
        with open(path, 'w', newline='') as f:
            my_writer = csv.writer(f)
            for i in range(1, 111):
                resp = requests.get(f"https://www.shifair.com/exhibition/0-0-0-0-0-0-add_time-desc-{i}/")
                html = etree.HTML(resp.text)
                divs = html.xpath("/html/body/div/div[5]/div[2]/div")
                for div in divs:
                    zhanhui = div.xpath("./div/h1/a/text()")
                    tuijian = div.xpath("./div[2]/div[1]/span/text()")
                    buttons = div.xpath("./div[2]/div[3]/button/text()")
                    scales = div.xpath("./div[2]/div[4]/div/text()")
                    time = div.xpath("./div[2]/div[2]/div[1]/text()")
                    day = div.xpath("./div[2]/div[2]/div[2]/span/text()")
                    hot = div.xpath("./div[1]/div/span/text()")
                    pinglun = div.xpath("./div[2]/div[5]/div[1]/span/text()")
                    dingyue = div.xpath("./div[2]/div[5]/div[2]/button/text()")
                    data = [zhanhui, tuijian, buttons, scales, time, day, hot, pinglun, dingyue]
                    my_writer.writerows(data)
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月7日