我使用了pandas库,我需要优化这段代码使得它可以把查找结果输出到指定的csv表格
时间: 2024-04-18 20:23:31 浏览: 125
使用pandas读取csv文件的指定列方法
当然,你可以使用pandas库来优化代码,并将查找结果输出到指定的CSV表格中。下面是经过优化的示例代码:
```python
import pandas as pd
import requests
from bs4 import BeautifulSoup
def get_boiling_point(compound_name):
# 构建URL
url = f"https://pubchem.ncbi.nlm.nih.gov/compound/{compound_name}#section=Boiling-Point"
# 发送GET请求
response = requests.get(url)
# 使用BeautifulSoup解析HTML内容
soup = BeautifulSoup(response.content, "html.parser")
# 查找沸点数据
boiling_point_element = soup.find("dt", text="Boiling Point")
if boiling_point_element:
boiling_point = boiling_point_element.find_next_sibling("dd").text.strip()
return boiling_point
else:
return "沸点数据未找到"
# 创建一个空的DataFrame用于存储结果
results_df = pd.DataFrame(columns=['化合物名称', '沸点'])
# 待查询化合物名称列表
compound_names = ['water', 'ethanol', 'benzene']
# 遍历化合物名称列表,查询并存储结果
for compound_name in compound_names:
boiling_point = get_boiling_point(compound_name)
results_df = results_df.append({'化合物名称': compound_name, '沸点': boiling_point}, ignore_index=True)
# 将结果保存到指定的CSV表格中
results_df.to_csv('boiling_points.csv', index=False)
```
上述代码使用了pandas库来创建一个空的DataFrame,并在每次查询后将结果添加到DataFrame中。最后,使用`to_csv`方法将DataFrame保存到指定的CSV表格中(这里是'boiling_points.csv')。你可以根据需要修改`compound_names`列表以查询不同的化合物。
请确保已经安装了pandas库,并将代码中的文件路径更改为你想要保存结果的位置。运行代码后,将会生成一个包含查询结果的CSV文件。
阅读全文