抓取以下网站 https://gdzd.stats.gov.cn/sjfb/sjjd/index_mo.html 中每个月份的广东居民消费价格数据。写出Python程序,尽量简单一点
时间: 2024-10-13 18:18:10 浏览: 33
抓取网页数据通常需要用到网络请求库如`requests`和解析HTML的库如`BeautifulSoup`或更高级的`pandas`的`read_html`功能。这里是一个简单的示例,假设该页面的消费价格数据在一个表格里,我们可以直接提取出来:
```python
import requests
from bs4 import BeautifulSoup
# 定义目标URL
url = "https://gdzd.stats.gov.cn/sjfb/sjjd/index_mo.html"
# 发送GET请求获取网页内容
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 使用BeautifulSoup解析HTML
soup = BeautifulSoup(response.text, 'lxml')
# 找到包含数据的表格元素(这通常是一个`table`标签)
table = soup.find('table') # 确保找到正确的标签并调整查找策略 if 失败
# 提取表格中的每一行数据,每一行对应一个月的数据
data_rows = table.find_all('tr')
for row in data_rows:
cells = row.find_all('td') # 获取每个单元格的数据
month_data = [cell.text.strip() for cell in cells] # 假设所有需要的数据都在<td>标签内
# 对数据做进一步处理,例如清洗、转换为合适的格式等
# 这部分取决于实际的表格结构和需求
process_monthly_data(month_data) # 自定义函数处理每月数据
else:
print(f"请求失败,状态码: {response.status_code}")
# 定义处理每月数据的函数
def process_monthly_data(monthly_data):
# 这里应添加代码来保存数据、分析或打印数据
pass
```
请注意,这个示例假设了数据是以表格形式呈现,并且可以直接提取。实际操作中,可能需要根据网页的具体结构进行调整。另外,由于网站可能会有反爬虫机制,如需要登录、动态加载、cookies等,这个脚本可能需要额外的处理。
阅读全文