萌新的Python学习日记 - 爬虫无影 - 爬取豆瓣电影top250并入库:豆瓣电影top250

本文介绍了一个使用Python实现的豆瓣Top250电影爬虫项目,通过requests和BeautifulSoup抓取电影名称、链接、评分及简介,并将数据存储到MongoDB数据库中。该教程展示了如何分页抓取数据,适用于初学者实践爬虫技术。

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

博客第九天

测试页面:

豆瓣电影 Top 250

https://movie.douban.com/top250?start=0&filter=

目的:抓取该页面中每部电影的名称,链接,评分,评语



工程内容:Python3.5,jupyter notebook

工具包:requests,BeautifulSoup

代码(可翻页):

import requests
from bs4 import BeautifulSoup as bs
import pymongo


client = pymongo.MongoClient('localhost',27017)
doubantop = client['doubantop']
toplist = doubantop['list']




# url = 'https://movie.douban.com/top250?start={}&filter='.format(i)
# url = 'https://movie.douban.com/top250?start=0&filter='
def getlist(url):
    web = requests.get(url)
    soup = bs(web.text,'lxml')
    names = soup.select('#content > div > div.article > ol > li > div > div.info > div.hd > a > span')
    links = soup.select('#content > div > div.article > ol > li > div > div.info > div.hd > a')
    votes = soup.select('#content > div > div.article > ol > li > div > div.info > div.bd > div > span.rating_num')
    descs = soup.select('#content > div > div.article > ol > li > div > div.info > div.bd > p.quote > span')
    for name,link,vote,desc in zip(names,links,votes,descs):
        data = {
            'name':name.text,
            'link':link.get('href'),
            'vote':vote.text,
            'desc':desc.text
        }
        toplist.insert_one(data)
        print(data)
# getlist(url)
for i in range(0,10):
    url = 'https://movie.douban.com/top250?start={}&filter='.format(i * 25)

    getlist(url)


print内容(部分):



数据库内容:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值