iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >解决Python报错ValueError: No engine for filetype: ‘xls‘
  • 448
分享到

解决Python报错ValueError: No engine for filetype: ‘xls‘

pythonpycharm开发语言 2023-09-11 19:09:33 448人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

python环境介绍 python3.11,编译器PyCharm 2022.3 报错原因分析 对应Python3.11版本的pandas无法兼容低版本的xls。     解决方案 以csv格式输出。以xlsx格式输出。更改后可能会出现报错

python环境介绍

python3.11,编译器PyCharm 2022.3

报错原因分析

对应Python3.11版本的pandas无法兼容低版本的xls。

 

 

解决方案

  • 以csv格式输出。
  • 以xlsx格式输出。更改后可能会出现报错,没有安装openxls库,这时,只需安装该库即可正常运行。

 

更正后代码

# 水情日报 数据下载# Water information data download# Water information url# http://61.163.88.227:8006/hwsq.aspx?sr=0nkRxv6s9CTRMlwRgmfFF6jTpJPtAv87# Design by HanLin# Parameters start =======# Start date (include)开始日期Start_date = '2003-05-20'# End date (include)结束日期End_date = '2003-06-24'# Result save path保存路径# (Under the Download_data folder)Save_path = r'F:\water'  #自己更改一下# Parameters end =======import warningswarnings.filterwarnings('ignore')import osimport sysimport numpy as npimport pandas as pdimport bs4from bs4 import BeautifulSoupimport requestsimport datetimeWater_info_url=r'http://61.163.88.227:8006/hwsq.aspx?sr=0nkRxv6s9CTRMlwRgmfFF6jTpJPtAv87'# Initial login header# In order to achieve cookieheader_first={    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,**',    'Accept-Encoding': 'gzip, deflate',    'Accept-Language': 'zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7,zh-TW;q=0.6',    'Cache-Control': 'no-cache',    'Connection': 'keep-alive',    'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',    'Host': '61.163.88.227:8006',    'Origin': r'http://61.163.88.227:8006',    'Referer': 'http://61.163.88.227:8006/hwsq.aspx?sr=0nkRxv6s9CTRMlwRgmfFF6jTpJPtAv87',    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.53 Safari/537.36 Edg/103.0.1264.37',}# Data to be transferred要传输的数据# Use Form Datapostdata={    'ctl00$ScriptManager1': 'ctl00$ScriptManager1|ctl00$ContentLeft$Button1',    '__EVENTTARGET': '',    '__EVENTARGUMENT': '',    'ctl00$ContentLeft$menuDate1$TextBox11': '2022-06-13',    '__VIEWSTATE':'/wEPDwULLTEwMDI5NzA1NzkPZBYCZg9kFgICAw9kFgICBQ9kFgJmD2QWAgIBD2QWAgIBDxYCHglpbm5lcmh0bWwF60w8dGFibGUgd2lkdGg9Ijk4JSIgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjEiIGJnY29sb3I9IiNEMUREQUEiIGFsaWduPSJjZW50ZXIiPjx0cj48dGQgaGVpZ2h0PSI0MCIgYmFja2dyb3VuZD0ic2tpbi9pbWFnZXMvbmV3bGluZWJnMy5naWYiPjx0YWJsZSB3aWR0aD0iOTglIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+PHRyPjx0ZCBhbGlnbj0iY2VudGVyIj48ZGl2IGNsYXNzPSdmaXJzdFRpdGxlJz7msLTmg4Xml6XmiqU8L2Rpdj48ZGl2IGNsYXNzPSdzZWNUaXRsZSc+MjAyMi0wNi0yNjwvZGl2PjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PC90cj48L3RhYmxlPjx0YWJsZSB3aWR0aD0iOTglIiBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMSIgYmdjb2xvcj0iI0QxRERBQSIgYWxpZ249ImNlbnRlciIgc3R5bGU9Im1hcmdpbi10b3A6OHB4IiBjbGFzcz0ibWFpblR4dCI+PHRyPjx0ZCB3aWR0aD0iNTAlIj48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIxIiBiZ2NvbG9yPSIjRDFEREFBIiBhbGlnbj0iY2VudGVyIiBzdHlsZT0ibWFyZ2luLXRvcDo4cHgiIGNsYXNzPSJtYWluVHh0Ij48VFIgYWxpZ249J2NlbnRlcicgYmdjb2xvcj0nI0U3RTdFNycgaGVpZ2h0PScyMicgY2xhc3M9J3RhYmxlVGl0bGUnID48VEQgd2lkdGg9IjE1JSIgc3R5bGU9ImZvbnQtc2l6ZToxMXB0OyI+5rKz5ZCNPC9URD48VEQgd2lkdGg9IjI1JSIgc3R5bGU9ImZvbnQtc2l6ZToxMXB0OyI+56uZ5ZCNPC9URD48VEQgd2lkdGg9IjIwJSIgc3R5bGU9ImZvbnQtc2l6ZToxMXB0OyI+5rC05L2NPC9URD48VEQgd2lkdGg9IjIwJSIgc3R5bGU9ImZvbnQtc2l6ZToxMXB0OyI+5rWB6YePPC9URD48VEQgd2lkdGg9IjIwJSIgc3R5bGU9ImZvbnQtc2l6ZToxMXB0OyI+5ZCr5rKZ6YePPC9URD48L1RSPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7llJDkuYPkuqUgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4yNjcxLjgxPC90ZD48dGQ+NzA2PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+6b6Z576K5bOh5YWl5bqTPC90ZD48dGQ+LTwvdGQ+PHRkPjc0ODwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPum+mee+iuWzoeiThOawtOmHjzwvdGQ+PHRkPjI1ODMuNTg8L3RkPjx0ZD4oMTc5KeS6vzwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPum+mee+iuWzoeWHuuW6kzwvdGQ+PHRkPi08L3RkPjx0ZD4xMDYwPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5YiY5a625bOh5YWl5bqTPC90ZD48dGQ+LTwvdGQ+PHRkPjEzMTA8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7liJjlrrbls6Hok4TmsLTph488L3RkPjx0ZD4xNzE5LjM4PC90ZD48dGQ+KDIxLjgp5Lq/PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5YiY5a625bOh5Ye65bqTPC90ZD48dGQ+LTwvdGQ+PHRkPjExMTA8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7lhbDlt54gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPjE1MTEuNjM8L3RkPjx0ZD4xMzUwPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5LiL5rKz5rK/ICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MTIzMC4yMjwvdGQ+PHRkPjExODA8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7nn7PlmLTlsbEgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4xMDg1Ljk3PC90ZD48dGQ+OTMwPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5be05b2m6auY5YuSICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPjEwNDkuMDQ8L3RkPjx0ZD42MTE8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7kuInmuZbmsrPlj6MgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MTAxNi4zNTwvdGQ+PHRkPjMxNTwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuWMheWktCAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MTAwMS4xODwvdGQ+PHRkPjI4MjwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuWktOmBk+aLkCAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPjk4NS41OTwvdGQ+PHRkPjIwNTwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuS4h+WutuWvqOiThOawtOmHjzwvdGQ+PHRkPjk3NS44OTwvdGQ+PHRkPig0Ljg1KeS6vzwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuS4h+WutuWvqOS4iuWHuuW6kzwvdGQ+PHRkPi08L3RkPjx0ZD4xMjwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuS4h+WutuWvqOS4iyAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD44OTguODc8L3RkPjx0ZD4xMjwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuW6nOiwtyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+ODA1Ljc2PC90ZD48dGQ+MTc0PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5ZC05aChICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD42MzUuMTI8L3RkPjx0ZD4xNjY8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7pvpnpl6ggICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPjM3Ni4xNTwvdGQ+PHRkPjE3MjwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7msb7msrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuays+a0pSAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+LTwvdGQ+PHRkPi08L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+5YyX5rSb5rKzICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+54q25aS0ICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4zNjAuNTc8L3RkPjx0ZD41LjIyPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPuazvuaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5byg5a625bGxICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+NDE5LjYxPC90ZD48dGQ+Mi40ODwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7muK3msrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuWSuOmYsyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+Mzc2LjIzPC90ZD48dGQ+NzkuNTwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7muK3msrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuWNjuWOvyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MzM3LjQ1PC90ZD48dGQ+NDY8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7mvbzlhbMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPjMyNC43NzwvdGQ+PHRkPjE4NTwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuWPsuWutua7qeiThOawtOmHjzwvdGQ+PHRkPjMxNi45PC90ZD48dGQ+KDUuMjgp5Lq/PC90ZD48dGQ+LTwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSI1MCUiPjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjEiIGJnY29sb3I9IiNEMUREQUEiIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJtYXJnaW4tdG9wOjhweCIgY2xhc3M9Im1haW5UeHQiPjxUUiBhbGlnbj0nY2VudGVyJyBiZ2NvbG9yPScjRTdFN0U3JyBoZWlnaHQ9JzIyJyBjbGFzcz0ndGFibGVUaXRsZScgPjxURCB3aWR0aD0iMTUlIiBzdHlsZT0iZm9udC1zaXplOjExcHQ7Ij7msrPlkI08L1REPjxURCB3aWR0aD0iMjUlIiBzdHlsZT0iZm9udC1zaXplOjExcHQ7Ij7nq5nlkI08L1REPjxURCB3aWR0aD0iMjAlIiBzdHlsZT0iZm9udC1zaXplOjExcHQ7Ij7msLTkvY08L1REPjxURCB3aWR0aD0iMjAlIiBzdHlsZT0iZm9udC1zaXplOjExcHQ7Ij7mtYHph488L1REPjxURCB3aWR0aD0iMjAlIiBzdHlsZT0iZm9udC1zaXplOjExcHQ7Ij7lkKvmspnph488L1REPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7kuInpl6jls6EgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4yNzE8L3RkPjx0ZD4xNi40PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5bCP5rWq5bqV5LiK6JOE5rC06YePPC90ZD48dGQ+MjQzLjY2PC90ZD48dGQ+KDI2LjYp5Lq/PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5bCP5rWq5bqVICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MTM2LjMxPC90ZD48dGQ+NDExMDwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7kvIrmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuS4nOa5viAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MzYyLjU2PC90ZD48dGQ+Ny40MzwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7kvIrmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPumZhua1keWdneS4iuiThOawtOmHjzwvdGQ+PHRkPjMxMy41NDwvdGQ+PHRkPig0LjQ2KeS6vzwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7kvIrmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPumZhua1keWdneS4iuWHuuW6kzwvdGQ+PHRkPi08L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPuS8iuaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+6b6Z6Zeo6ZWHICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MTQ3LjExPC90ZD48dGQ+MTMuNjwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7mtJvmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuWNouawjyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+NTQ5LjUzPC90ZD48dGQ+OS42MTwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7mtJvmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuaVheWOv+awtOW6k+iThOawtOmHjzwvdGQ+PHRkPjUxNy4xNDwvdGQ+PHRkPigzLjcxKeS6vzwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7mtJvmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuaVheWOv+awtOW6k+WHuuW6kzwvdGQ+PHRkPi08L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPua0m+aysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+6ZW/5rC077yI5LqM77yJICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4zNzcuNzg8L3RkPjx0ZD4yMC41PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPua0m+aysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+55m96ams5a+6ICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MTEyLjY4PC90ZD48dGQ+MTYuNDwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7kvIrmtJvmsrMgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7pu5Hnn7PlhbMgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4xMDQuMjY8L3RkPjx0ZD4yMi45PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPuS4ueaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5bGx6Lev5Z2qICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+MTk5LjkyPC90ZD48dGQ+MC42ODY8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+5rKB5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7kupTpvpnlj6MgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4xNDAuNTk8L3RkPjx0ZD4xMDc8L3RkPjx0ZD4tPC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+5rKB5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7mrabpmZ8gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPjEwMC4xNTwvdGQ+PHRkPjEwNzwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiPjx0ZD7pu4TmsrMgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuiKseWbreWPoyAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPjkwLjUzPC90ZD48dGQ+NDEyMDwvdGQ+PHRkPioyLjM4PC90ZD48L3RyPjx0ciBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIj48dGQ+6buE5rKzICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD7lpLnmsrPmu6kgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD43Mi45MjwvdGQ+PHRkPjM4MTA8L3RkPjx0ZD4qMi42MjwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+6auY5p2RICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD41OS41NzwvdGQ+PHRkPjM3NjA8L3RkPjx0ZD4qMy44NTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5a2Z5Y+jICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD40NS4wODwvdGQ+PHRkPjMzNjA8L3RkPjx0ZD4qNC42NjwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPuWkp+axtuaysyAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuaItOadkeWdnTwvdGQ+PHRkPi08L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPuS4nOW5s+a5liAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuS4nOW5s+a5luiAgea5luiThOawtOmHjzwvdGQ+PHRkPjM5LjY4PC90ZD48dGQ+KDIuNTcp5Lq/PC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPuWkp+axtuaysyAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+PHRkPuWHuua5lumXuDwvdGQ+PHRkPi08L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+6Im+5bGxICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4zOC40NDwvdGQ+PHRkPjMxNDA8L3RkPjx0ZD4qNi4zOTwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5rO65Y+jICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4yNi45NjwvdGQ+PHRkPjMwMjA8L3RkPjx0ZD4qNC4wMzwvdGQ+PC90cj48dHIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiI+PHRkPum7hOaysyAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD48dGQ+5Yip5rSlICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPjx0ZD4xMC40PC90ZD48dGQ+MjcxMDwvdGQ+PHRkPio2Ljc4PC90ZD48L3RyPjwvdGFibGU+PC90ZD48L3RyPjwvdGFibGU+ZGQX7a8AK6EFHourJJ2xgJ7zGGznTXSzg7yZvMnSVM0/Mw==',    '__VIEWSTATEGENERATOR': 'E4DC7756',    '__EVENTVALIDATION': '/wEdAAPgMurU7dGbCJhtK8P1Nstr9DkLBAR+UXBBGQ1m5cY+HY5Ggl8DGIT46Qo2GBY6Yh4fpd+LHAI2ihOULO1i+2DgH5H5WRTn9WanmVpiptZGnA==',    '__ASYNCPOST': 'true',    'ctl00$ContentLeft$Button1': '查询',}# Parameters that don't seem to be usefulparam={    'sr': '0nkRxv6s9CTRMlwRgmfFF6jTpJPtAv87'}def Generate_date_list(start_date,end_date):    date_lists=[]    start_date=datetime.datetime.strptime(start_date,'%Y-%m-%d')    end_date=datetime.datetime.strptime(end_date,'%Y-%m-%d')    # Make sure the start time is less than the end time#确保开始时间小于结束时间    if start_date > end_date:        print('Start time is greater than end time !')        sys.exit(0)    else:        while(start_date <= end_date):            date_lists.append(datetime.datetime.strftime(start_date,'%Y-%m-%d'))            start_date=start_date+datetime.timedelta(days=1)    return date_lists# Generate postdata corresponding to the datedef Generate_date_related_postdata(postdata,date):    postdata['ctl00$ContentLeft$menuDate1$TextBox11']=datedef InfORMation_extraction(response):    response_lists=[]    # Parsing html    response = BeautifulSoup(response,'html.parser')    # Data cleaning    for single_response in response.find_all('tr'):        if len(single_response) == 5:            if isinstance(single_response.contents[0],bs4.element.Tag):                response_contents_lists=[]                for single_response_content in single_response.contents:                    single_response_content_cache=single_response_content.contents                    if len(single_response_content_cache)!=0:                        response_contents_lists.append(single_response_content_cache[0])                response_lists.append(response_contents_lists)    return response_listsdef Generate_excel(information_lists):    column_header=information_lists[0]    Result_excel=pd.DataFrame(information_lists[1:],dtype=str,columns=column_header)    return Result_exceldef Result_save(save_path,result_excel,date):    dir_name = 'Download_data'    file_path = os.path.join(save_path,dir_name)    # Check if the folder is in    if not os.path.exists(file_path):        os.makedirs(file_path)    file_name = f'{date}.xlsx' ## "xls" was replaced by "xlsx".    file_path = os.path.join(file_path,file_name)    result_excel.to_excel(file_path,header=True,index=True)if __name__=='__main__':    date_lists = Generate_date_list(Start_date,End_date)    session = requests.session()    First_response = session.post(Water_info_url,headers=header_first)    for date_list in date_lists:        Generate_date_related_postdata(postdata,date_list)        Next_response = session.post(Water_info_url, headers=header_next, data=postdata)        Next_response.raise_for_status()        Next_response.encoding = Next_response.apparent_encoding        # Get the returned infomation        Next_response = Next_response.text        Information_lists = Information_extraction(Next_response)        Result_excel = Generate_excel(Information_lists)        Result_save(Save_path,Result_excel,date_list)        print(f'Date : {date_list} ,data download is complete !')

来源地址:https://blog.csdn.net/weixin_46629224/article/details/130140478

--结束END--

本文标题: 解决Python报错ValueError: No engine for filetype: ‘xls‘

本文链接: http://www.lsjlt.com/news/403504.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作