上海网站搭建,西安工装装修公司排名,扁平化 wordpress 主题,如何建设自己企业网站大家好#xff0c;我是python222小锋老师。
近日锋哥又卷了一波Python实战课程-批量爬取豆瓣电影排行信息#xff0c;主要是巩固下Python爬虫基础
视频版教程#xff1a;
Python爬虫实战-批量爬取豆瓣电影排行信息 视频教程_哔哩哔哩_bilibiliPython爬虫实战-批量爬取豆瓣…大家好我是python222小锋老师。
近日锋哥又卷了一波Python实战课程-批量爬取豆瓣电影排行信息主要是巩固下Python爬虫基础
视频版教程
Python爬虫实战-批量爬取豆瓣电影排行信息 视频教程_哔哩哔哩_bilibiliPython爬虫实战-批量爬取豆瓣电影排行信息 视频教程作者小锋老师官网www.python222.com, 视频播放量 344、弹幕量 0、点赞数 13、投硬币枚数 7、收藏人数 18、转发人数 0, 视频作者 java1234官方, 作者简介 公众号java1234 微信java9266相关视频Python爬虫实战-批量爬取下载网易云音乐Python爬虫实战-批量爬取美女图片网下载图片 视频教程这个视频可能会得罪很多人..终极爬虫JS逆向教程突破反爬虫防御的终极指南从入门到实战就没有爬不了的网站【Python爬虫教程】你敢学我就敢发300集从入门到入狱完整版胆小勿学全程干货无废话学完即可兼职接单2024 一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium 【无废话版】【Python爬虫】三分钟教你免费下载全网VIP音乐音乐一键下载免费听告别付费时代小白也能学得会附源码【Python爬虫】手把手教你爬取百度文库PPT文档破解百度文库收费限制下载PPT再也没花过钱【B站第一】清华大佬196小时讲完的Python入门学习教程从小白到大神整整300集全干货无废话学完即可就业允许白嫖【2023百度文库VIP文档PPT免费下载】Python白嫖百度文库付费VIP文档破解百度文库收费限制零基础白嫖教程【Python教程】一分钟轻松实现观影自由教你用Python免费看电影代码可分享 | Python爬虫教程https://www.bilibili.com/video/BV1aN411u7o5/ 爬虫目标网站
https://movie.douban.com/top250 经过分析一共10页第二页第二页...第10页的规律是
分页规律 第N页https://movie.douban.com/top250?start25*(N-1)filter
爬取网页解析数据处理数据我们最终把数据存入Excel。 因为涉及到分页所以我们要对解析url解析网页导出Excel代码进行封装方便复用。 解析请求爬取网页方法
def crawl_html(url):解析请求爬取网页:param url: 请求地址:return: 网页源码response requests.get(urlurl, headersheaders)return response.text 解析网页源码方法
def parse_html(html):解析网页源码:param html: 页面源码:return: 页面 电影对象信息列表 [ {:},{},{} ]# 实例化soupsoup BeautifulSoup(html, lxml)# 获取所有电影DOMmovie_list soup.select(ol.grid_view li)# print(movie_list)# 电影数据对象列表movie_data_list []for movie in movie_list:try:rank movie.select_one(div.pic em).text # 获取排名title movie.select_one(div.info span.title).text # 获取电影名称info movie.select_one(div.bd p).text.strip() # 获取电影描述信息rating_num movie.select_one(div.star span.rating_num).text # 获取评分comment_count movie.select(div.star span)[3].text.replace(人评价, ) # 获取评论数quete_dom movie.select_one(p.quote span.inq)quote if quete_dom:quote quete_dom.text# quote movie.select_one(p.quote span.inq).text # 获取电影描述movie_data_list.append({rank: rank,title: title,info: info,rating_num: rating_num,comment_count: comment_count,quote: quote})except:print(movie.select_one(div.pic em).text, 异常, traceback.print_exc())continuereturn movie_data_list
导出Excel方法借助pandas库
def export_excel(datas):导出数据到Excel:param datas: 数据:return:df pd.DataFrame(datas)df.to_excel(豆瓣电影TOP250.xlsx)
完整源码参考具体代码解释参考帖子顶部的视频教程。
豆瓣电影 Top 250 抓取电影信息存到excel里面使用requests爬取网页使用bs4解析数据使用pandas将数据写入Excel目标网页https://movie.douban.com/top250分页规律 第N页https://movie.douban.com/top250?start25*(N-1)filter作者小锋老师官网www.python222.com
import traceback
import requests
from bs4 import BeautifulSoup
import pandas as pdheaders {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36
}url https://movie.douban.com/top250?start0filterdef crawl_html(url):解析请求爬取网页:param url: 请求地址:return: 网页源码response requests.get(urlurl, headersheaders)return response.textdef parse_html(html):解析网页源码:param html: 页面源码:return: 页面 电影对象信息列表 [ {:},{},{} ]# 实例化soupsoup BeautifulSoup(html, lxml)# 获取所有电影DOMmovie_list soup.select(ol.grid_view li)# print(movie_list)# 电影数据对象列表movie_data_list []for movie in movie_list:try:rank movie.select_one(div.pic em).text # 获取排名title movie.select_one(div.info span.title).text # 获取电影名称info movie.select_one(div.bd p).text.strip() # 获取电影描述信息rating_num movie.select_one(div.star span.rating_num).text # 获取评分comment_count movie.select(div.star span)[3].text.replace(人评价, ) # 获取评论数quete_dom movie.select_one(p.quote span.inq)quote if quete_dom:quote quete_dom.text# quote movie.select_one(p.quote span.inq).text # 获取电影描述movie_data_list.append({rank: rank,title: title,info: info,rating_num: rating_num,comment_count: comment_count,quote: quote})except:print(movie.select_one(div.pic em).text, 异常, traceback.print_exc())continuereturn movie_data_listdef export_excel(datas):导出数据到Excel:param datas: 数据:return:df pd.DataFrame(datas)df.to_excel(豆瓣电影TOP250.xlsx)datas [] # 所有电影数据
for i in range(1, 11): # 遍历10页start 25 * (i - 1)url fhttps://movie.douban.com/top250?start{start}filterprint(url)movie_data_list parse_html(crawl_html(url))datas movie_data_listexport_excel(datas)