【爬虫实战项目】Python爬虫批量旅游景点信息数据并保存本地
import requests
import json
import os
def get_poi_info(query, offset, api_key):
"""
根据查询关键词和偏移量获取旅游景点信息
"""
url = f"https://restapi.amap.com/v3/place/text?keywords={query}&city=北京&offset={offset}&key={api_key}"
response = requests.get(url)
if response.status_code == 200:
return response.json()
return None
def save_poi_info(poi_info, file_path):
"""
将景点信息保存到本地文件
"""
with open(file_path, 'a', encoding='utf-8') as f:
f.write(json.dumps(poi_info, ensure_ascii=False))
f.write('\n')
def main():
# 确保目录存在
os.makedirs('travel_data', exist_ok=True)
# 输入API密钥
api_key = '您的高德API密钥'
# 设置查询关键词
query = '旅游景点'
# 设置每次请求的偏移量
offset = 25
# 设置请求次数
num_requests = 10
for i in range(num_requests):
# 获取景点信息
poi_info = get_poi_info(query, offset*i, api_key)
# 保存景点信息到本地文件
file_path = f'travel_data/poi_info_{i}.json'
save_poi_info(poi_info, file_path)
if __name__ == '__main__':
main()
这段代码首先定义了一个获取景点信息的函数get_poi_info
,它构造了一个请求URL并发送请求,然后解析返回的JSON数据。另外一个函数save_poi_info
负责将获取到的数据保存到本地文件。在main
函数中,我们设置了查询关键词、API密钥、请求偏移量和请求次数,然后循环发送请求并保存数据。这个例子展示了如何使用高德地图API批量获取旅游景点数据并将其保存到本地文件的过程。
评论已关闭