【创新实训】 爬虫开发记录(1):爬取豆瓣详情页

本文记录了使用Python爬虫抓取豆瓣电影详情页的过程,包括设置爬取目标、选用requests_html和fake_useragent库伪装用户代理、通过pymongo连接MongoDB数据库存储数据。已成功爬取10万条包含IMDb id、电影简介等信息的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

爬取目标

根据数据库中的豆瓣id,爬取豆瓣详情页,需要的信息是IMDb的id和该电影的简介和详情

包括source, sourceId, name, nameFrn,year,cover,directors,writers, stars, types, country,language, releaseDate, runtime, imdb, summary,rating, rateNum

使用的库

爬虫部分主要用python的requests_html库实现,使用fake_useragent库配置User Agent。
数据库部分使用pymongo库连接MongoDB并进行查询和插入操作。

import requests_html
from pymongo import MongoClient
from fake_useragent import UserAgent

连接数据库

从setting.json中读取MongoDB的host、用户名和密码
获取movie库中的profile和details集合

with open('setting.json') as f:
    setting = json.load(f)

clint=MongoClient("mongodb://{}:27017/movie".format(setting['host']),username=setting['username'],password=setting['password'])
db=clint["movie"]
profile=db["profile"]
details=db["details"]

爬虫配置

ua = UserAgent(use_cache_server=False)

session = requests_html.HTMLSession()
session.mount('http://', HTTPAdapter(max_retries=3))
session.mount('https://', HTTPAdapter(max_retries=3))

session.keep_alive = False

爬取过程

从profile集合中取出目标电影详情页的url

docs=profile.find({
   
   "source":"douban"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值