打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Python|简单爬取豆瓣网电影信息
前言:
在掌握一些基础的爬虫知识后,就可以尝试做一些简单的爬虫来练一练手。今天要做的是利用xpath库来进行简单的数据的爬取。我们爬取的目标是电影的名字、导演和演员的信息、评分和url地址。
准备环境:Pycharm、python3、爬虫库request、xpath模块、lxml模块
第一步:分析url ,理清思路
先搜索豆瓣电影top250,打开网站可以发现要爬取的数据不止存在单独的一页,而是存在十页当中,这时应该怎么做呢?
首先观察:
第一页的
url:https://movie.douban.com/top250?start=0&filter=
第二页的
url:https://movie.douban.com/top250?start=25&filter=
第三页的
url:https://movie.douban.com/top250?start=50&filter=
可以得出一个结论每页的url是有规律的,start后面的数字等于页数减一乘以五。这样就可以用一个循环来爬取。
图1.1
再来就是通常的头部信息,第一步如下图所示:
图1.2
第二步:发送请求,利用xpath处理数据
Xpath可以通过节点来快速获取需要的信息,并把它提取出来。先打开浏览器的开发者工具。发现所有的电影数据都存放在div[@class="info"]的标签里,通过一级一级的获取,就可以得到想要的信息。可以直接来利用开发者工具的copy,来copy xpath的路径,但一般不推荐,因为很可能出错。
图2.1
如图所示:
图2.2
第三步:保存数据
我们可以用csv来保存数据
图3.1
代码如下:
import requests
import lxml.html
import csv
etree = lxml.html.etree
temp = r'C:\Users\86177\Desktop'+'\\'+'doubanmovie'
with open(temp + '.csv', 'w') as f:
csvwriter = csv.writer(f, dialect='excel')
csvwriter.writerow(['title','info','average','link'])
header ={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)  AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.7 Safari/537.36'}
for n in range(11):
url = 'https://movie.douban.com/top250?start=%s&filter='.format((n-1)*5)
response = requests.get(url,headers=header)
response.encoding = "utf-8"
html1 = etree.HTML(response.text)
h = html1.xpath('//div[@class="info"]')
for sech in h:
i = sech
title = i.xpath('div[@class="hd"]/a/span[@class="title"]/text()')
othertitle = i.xpath('div[@class="hd"]/a/span[@class="other"]/text()')
info = i.xpath('div[@class="bd"]/p/text()')
average = i.xpath('div[@class="bd"]/div[@class="star"]/span[@class="rating_num"]/text()')
link = i.xpath('div[@class="hd"]/a/@href')
for a, b, c, d in zip(title,  info, average, link):
print(a, b, c, d)
with open(temp + '.csv', 'w')  as f:
csvwriter =  csv.writer(f, dialect='excel')
csvwriter.writerow([a,  b, c, d])
总结:
这次爬取豆瓣的反爬虫机制较少,很适合一些学习爬虫知识的小白来练一练手。提高爬虫实战的能力。
END编  辑   |   王楠岚
责  编   |   王   曦
where2go 团队
微信号:算法与编程之美
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
PYTHON极简主义爬虫——豆瓣图书爬取实战
Python爬虫入门案例(一)豆瓣电影Top250爬取(request+XPath+csv)
【Python | 杂代码】爬虫,从基础到进阶(一)
单线程、多线程和协程的爬虫性能对比
Scrapy安装、爬虫入门教程、爬虫实例(豆瓣电影爬虫)
【Python爬虫】:使用高性能异步多进程爬虫获取豆瓣电影Top250
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服