Python爬取电影信息:Ajax介绍、爬取案例实战 + MongoDB存储
由于原代码较长,以下是核心函数的示例:
import requests
import json
from pymongo import MongoClient
# 连接MongoDB
client = MongoClient('mongodb://localhost:27017/')
db = client['movie_database']
collection = db['movies']
# 发送Ajax请求获取数据
def fetch_movies(url):
response = requests.get(url)
if response.status_code == 200:
data = json.loads(response.text)
return data['data']['movies']
else:
return []
# 解析数据并存储到MongoDB
def save_to_mongo(movies):
for movie in movies:
collection.insert_one(movie)
# 主函数
def main():
# 请求URL模板
url_template = 'http://api.example.com/movies?start={}&count=20'
# 循环获取数据并保存
for start in range(0, 100, 20):
url = url_template.format(start)
movies = fetch_movies(url)
save_to_mongo(movies)
if __name__ == '__main__':
main()
这段代码展示了如何使用Python发送HTTP GET请求来获取Ajax动态加载的数据,并将其存储到MongoDB数据库中。注意,示例中的URL和数据结构只是模拟的,实际应用中需要替换为正确的API端点和数据处理逻辑。
评论已关闭