简易爬取豆瓣TOP250数据并存储(mysql)

简易爬取豆瓣TOP250数据并存储

最开始接触的实例就是豆瓣top250的爬取,现在想起来,给他细化一下

  • 预置数据库

为了方便后续处理,建立了一个“爬虫”数据库,在其中建立了一个“doubantop250”表
表结构如下:
在这里插入图片描述
重点在数据爬取这里,所以没有特别去强调主键外键什么的
对应数据内容依次为序号、电影名称、别名、评分、一句话简介、评价人数、导演

  • 数据爬取(xpath、requests)
    数据爬取以xpath为主,以下附上整体代码
import requests
from lxml import etree
import pymysql
import re
from urllib import request

conn = pymysql.connect('127.0.0.1', 'root', 'password', '爬虫', charset='utf8')
cursor = conn.cursor()
heads={
   
'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 '
              '(KHTML, like Gecko) Chrome/78.0.3904.87 Mobile Safari/537.36'
}

ourl='https://movie.douban.com/top250?start='
url=''
num=0
while num<=225:
    url=ourl+str(num)
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
好的,我可以为您提供一个Python爬虫程序来实现这个功能。但是在使用之前,您需要安装一些必要的库,包括requests、BeautifulSoup、pandas和openpyxl。可以通过在命令行运行以下命令进行安装: ``` pip install requests pip install beautifulsoup4 pip install pandas pip install openpyxl ``` 安装完成后,可以使用以下代码来实现您的需求: ```python import requests from bs4 import BeautifulSoup import pandas as pd # 构造请求头 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} # 爬取网页 movie_list = [] for i in range(0, 250, 25): url = 'https://movie.douban.com/top250?start={}&filter='.format(i) r = requests.get(url, headers=headers) soup = BeautifulSoup(r.text, 'html.parser') ol = soup.find('ol', class_='grid_view') for li in ol.find_all('li'): movie = [] hd = li.find('div', class_='hd') movie.append(hd.find('span', class_='title').text) bd = li.find('div', class_='bd') movie.append(bd.find('p').text.strip().replace('\n', '').split('\xa0')[0]) movie.append(bd.find('div', class_='star').find_all('span')[1].text) movie.append(bd.find('span', class_='inq').text) movie_list.append(movie) # 保存到Excel df = pd.DataFrame(movie_list, columns=['电影名称', '电影信息', '评分', '一句话评价']) df.to_excel('douban_top250.xlsx', index=False) print('豆瓣top250数据已保存到Excel文件!') ``` 该程序会爬取豆瓣电影top250数据,包括电影名称、电影信息、评分和一句话评价,并将数据保存到Excel文件。请注意,豆瓣网站对爬虫有反爬措施,请勿频繁爬取,以免被封IP。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值