解决python DataFrame.to_csv()得到的文件出现空白行间隔

本文档介绍了如何将DataFrame保存为CSV文件时,将默认的行终止符从Windows风格的' '更改为Unix风格的' ',这对于跨平台兼容性非常重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


df.to_csv(filename) 默认line_terminator=’\r\n’)
改成
df.to_csv(filename,line_terminator=’\n‘)

from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time import pandas as pd # 配置参数 START_YEAR = 2005 END_YEAR = 2006 url = "https://lishi.tianqi.com/chongqing/" # 初始化 WebDriver options = webdriver.ChromeOptions() options.add_argument('--headless') # 无头模式,显示浏览器界面 driver = webdriver.Chrome(options=options) def get_weather_data(year, month): """获取指定年月的历史天气数据""" # 构造目标URL target_url = f"{url}{year}{month:02d}.html" driver.get(target_url) time.sleep(3) # 等待页面加载 # 提取每日数据 days = driver.find_elements(By.CSS_SELECTOR, '.tongue2 ul li') for day_item in days: try: date_str = day_item.find_element(By.CSS_SELECTOR, '.th200').text.strip() high_temp = day_item.find_elements(By.CSS_SELECTOR, '.th140')[0].text.strip() low_temp = day_item.find_elements(By.CSS_SELECTOR, '.th140')[1].text.strip() # 提取日期部分(去掉星期几) date_str = date_str.split(' ')[0] yield { 'date': date_str, 'high_temp': high_temp, 'low_temp': low_temp } except Exception as e: print(f'解析数据失败: {str(e)}') continue def main(): """主程序""" all_data = [] for year in range(START_YEAR, END_YEAR + 1): for month in range(1, 13): print(f'正在爬取 {year}年{month:02d}月 数据...') data_generator = get_weather_data(year, month) if data_generator: for data in data_generator: print(f'收集数据: {data}') # 调试信息 all_data.append(data) time.sleep(3) # 月间间隔 # 将数据保存为Excel文件 df = pd.DataFrame(all_data) df.to_csv('chongqing_weather.csv', index=False, encoding='utf-8-sig') print('数据已成功保存到 chongqing_weather.csv 文件中') if __name__ == '__main__': main() driver.quit() # 关闭浏览器 爬虫后csv中没有数据
最新发布
03-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值